mysql sql語句大全

1、新建用戶:

    >CREATE USER name IDENTIFIED BY 'ssapdrow';

  2、更改密碼:

    >SET PASSWORD FOR name=PASSWORD('fdddfd');

  3、權限管理

    >SHOW GRANTS FOR name; ? ?//查看name用戶權限

    >GRANT SELECT ON db_name.* TO name;    //給name用戶db_name數據庫的所有權限

    >REVOKE SELECT ON db_name.* TO name;    //GRANT的反操作,去除權限;

一、數據庫操作: 

  1、查看數據庫:

    >SHOW DATABASES;

  2、創建數據庫:

    >CREATE DATABASE db_name;  //db_name為數據庫名

  3、使用數據庫:

    >USE db_name;

  4、刪除數據庫:

    >DROP DATABASE db_name;

二、創建表:

  1、創建表:

    >CREATE TABLE table_name(

    >id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,    //id值,無符號、非空、遞增——唯一性,可做主鍵。

    >name VARCHAR(60) NOT NULL

    >score TINYINT UNSIGNED NOT NULL DEFAULT 0,    //設置默認列值

    >PRIMARY KEY(id)

    >)ENGINE=InnoDB    //設置表的存儲引擎,一般常用InnoDB和MyISAM;InnoDB可靠,支持事務;MyISAM高效不支持全文檢索

    >DEFAULT charset=utf8;  //設置默認的編碼,防止數據庫中文亂碼

    如果有條件的創建數據表還可以使用 ? >CREATE TABLE IF NOT EXISTS tb_name(........

  2、復制表:

    >CREATE TABLE tb_name2 SELECT * FROM tb_name;

    或者部分復制:

    >CREATE TABLE tb_name2 SELECT id,name FROM tb_name;

  3、創建臨時表:

    >CREATE TEMPORARY TABLE tb_name(這里和創建普通表一樣);

  4、查看數據庫中可用的表:

    >SHOW TABLES;

  5、查看表的結構:

    >DESCRIBE tb_name;

    也可以使用:

    >SHOW COLUMNS in tb_name;?    //from也可以

  6、刪除表:

    >DROP [ TEMPORARY ] TABLE [ IF EXISTS ] tb_name[ ,tb_name2.......];

    實例:

    >DROP TABLE IF EXISTS tb_name;

  7、表重命名:

    >RENAME TABLE name_old TO name_new;

    還可以使用:

    >ALTER TABLE name_old RENAME name_new;

三、修改表:

  1、更改表結構:

    >ALTER TABLE tb_name ADD[CHANGE,RENAME,DROP] ...要更改的內容...

    實例:

    >ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;

    >ALTER TABLE tb_name DROP address;

    >ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

四、插入數據:

  1、插入數據:

    >INSERT INTO tb_name(id,name,score)VALUES(NULL,'張三',140),(NULL,'張四',178),(NULL,'張五',134);

    這里的插入多條數據直接在后邊加上逗號,直接寫入插入的數據即可;主鍵id是自增的列,可以不用寫。

  2、插入檢索出來的數據:

    >INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

五、更新數據:

  1、指定更新數據:

    >UPDATE tb_name SET score=189 WHERE id=2;

    >UPDATE tablename SET columnName=NewValue [ WHERE condition ]

六、刪除數據:

  1、刪除數據:

    >DELETE FROM tb_name WHERE id=3;

七、條件控制:

  1、WHERE 語句:

    >SELECT * FROM tb_name WHERE id=3;

  2、HAVING 語句:

    >SELECT * FROM tb_name GROUP BY score HAVING count(*)>2

  3、相關條件控制符:?

    =、>、<、<>、IN(1,2,3......)、BETWEEN a AND b、NOT

    AND 、OR

    Linke()用法中 ? ? ?% ?為匹配任意、 ?_ ?匹配一個字符(可以是漢字)

    IS NULL 空值檢測

?八、MySQL的正則表達式:

  1、Mysql支持REGEXP的正則表達式:

    >SELECT * FROM tb_name WHERE name REGEXP '^[A-D]' ? //找出以A-D 為開頭的name

  2、特殊字符需要轉義。

?九、MySQL的一些函數:

  1、字符串鏈接——CONCAT()

    >SELECT CONCAT(name,'=>',score) FROM tb_name

  2、數學函數:

    AVG、SUM、MAX、MIN、COUNT;

  3、文本處理函數:

    TRIM、LOCATE、UPPER、LOWER、SUBSTRING

  4、運算符:

    +、-、*、\

  5、時間函數:

    DATE()、CURTIME()、DAY()、YEAR()、NOW().....

?十、分組查詢:

?  1、分組查詢可以按照指定的列進行分組:

    >SELECT COUNT(*) FROM tb_name GROUP BY score HAVING COUNT(*)>1;

  2、條件使用Having;

  3、ORDER BY 排序:

    ORDER BY DESC|ASC    =>按數據的降序和升序排列

十一、UNION規則——可以執行兩個語句(可以去除重復行)

?十二、全文檢索——MATCH和AGAINST

  1、SELECT MATCH(note_text)AGAINST('PICASO') FROM tb_name;

  2、InnoDB引擎不支持全文檢索,MyISAM可以;

?十三、視圖

  1、創建視圖

    >CREATE VIEW name AS SELECT * FROM tb_name WHERE ~~ ORDER BY ~~;

  2、視圖的特殊作用:

      a、簡化表之間的聯結(把聯結寫在select中);

      b、重新格式化輸出檢索的數據(TRIM,CONCAT等函數);

      c、過濾不想要的數據(select部分)

      d、使用視圖計算字段值,如匯總這樣的值。

?十四、使用存儲過程:

  個人理解,存儲過程就是一個自定義函數,有局部變量參數,可傳入參數,可以返回值,不過這語法夠呆滯的~~~

  1、創建存儲過程:

    >CREATE PROCEDURE pro(

    >IN num INT,OUT total INT)

    >BEGIN

    >SELECT SUM(score) INTO total FROM tb_name WHERE id=num;

    >END;

   ***這里的 ?IN (傳遞一個值給存儲過程),OUT(從存儲過程傳出一個值),INOUT(對存儲過程傳入、傳出),INTO(保存變量)

  2、調用存儲過程:

    >CALL pro(13,@total)      //這里的存儲過程兩個變量,一個是IN一個是OUT,這里的OUT也是需要寫上的,不寫會出錯

    >SELECT @total         //這里就可以看到結果了;

  3、存儲過程的其他操作:

    >SHOW PROCEDURE STATUS;      //顯示當期的存儲過程

    >DROP PROCEDURE pro;         //刪除指定存儲過程

十五、使用游標:

  對這個理解不是很懂,朋友多多指點哦~~~

   1、游標的操作

    >CREATE PROCEDURE pro()

    >BEGIN?

    >DECLARE ordername CURSOR FOR

    >SELECT order_num FROM orders;

    >END;

    

    >OPEN ordername;    //打開游標

?

    >CLOSE ordername;    //關閉游標

十六、觸發器:

  觸發器是指在進行某項指定操作時,觸發觸發器內指定的操作;

  1、支持觸發器的語句有DELETE、INSERT、UPDATE,其他均不支持

  2、創建觸發器:

    >CREATE TRIGGER trig AFTER INSERT ON ORDERS FOR EACH ROW SELECT NEW.orser_name;

    >INSERT語句,觸發語句,返回一個值

  3、刪除觸發器

    >DROP TRIGGER trig;

十七、語法整理:

  1、ALTER TABLE(修改表)

    ALTER TABLE table_name

    (  ADD    column  datatype ?  [ NULL | NOT NULL ]  [ CONSTRAINTS ]

      ?CHANGE  column   datatype   COLUMNS  [ NULL | NOT NULL ]   [ CONSTRAINTS ]

       DROP    column,

       。。。。

    )

  2、COMMIT(處理事務)

    >COMMIT;

?  3、CREATE INDEX(在一個或多個列上創建索引)

    CREATE INDEX index_name ON tb_name (column [ ASC | DESC ] , .......);

?  4、CREATE PROCEDURE (創建存儲過程)

    CREATE PROCEDURE pro([ parameters ])

    BEGIN

    ........

    END

?  5、CREATE TABLE(創建表)

    CREATE TABLE tb_name(

    column_name  datetype  [ NULL | NOT NULL ]?  [ condtraints] ? ,

    column_name  datetype  [ NULL | NOT NULL ]?  [ condtraints] ? ,

    .......

    PRIMARY KEY( column_name )

    )ENGINE=[ ?InnoDB | MyiSAM ]DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

?  6、CREATE USER(創建用戶)

    CREATE USER user_name [ @hostname ] [ IDENTIFIED BY [ PASSWORD ] 'pass_word' ];

?  7、CREATE VIEW (在一個或多個表上創建視圖)

    CREATE [ OR REPLACE ] VIEW view_name AS SELECT。。。。。。

?  8、DELETE (從表中刪除一行或多行)

    DELETE FROM table_name [WHERE ......]

?  9、DROP(永久刪除數據庫及對象,如視圖、索引等)

    DROP DATEBASE | INDEX | PROCEDURE | TABLE | TRIGGER | USER | VIEW ?name

?  10、INSERT (給表添加行)

    INSERT INTO tb_name [ ( columns,...... ) ] ?VALUES(value1,............);

    使用SELECT值插入:

    INSERT INTO tb_name [ ( columns,...... ) ]

    SELECT columns , ....... ? FROM tb_name [ WHERE ...... ] ;

   11、ROLLBACK(撤銷一個事務處理塊)

    ROLLBACK [ ?TO ?savapointname ?];

   12、SAVEPOINT(為ROLLBACK設置保留點)

    SAVEPOINT sp1;

   13、SELECT (檢索數據,顯示信息)

    SELECT column_name,.....FROM tb_name ?[ WHERE ] ? [ UNION ] ? ?[ RROUP BY ] ? [ HAVING ] ? [ ORDER BY ]

?  14、START TRANSACTION (一個新的事務處理塊的開始)

    START TRANSACTION

   15、UPDATE(更新一個表中的一行或多行)

    UPDATE tb_name SET column=value,......[ where ]

?

轉載于:https://www.cnblogs.com/jimmy-muyuan/p/5103432.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256117.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256117.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256117.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++總結筆記(十一)—— Lambda表達式的應用

文章目錄一、Lambda表達式是什么&#xff1f;二、程序示例1. 在STL中的使用一、Lambda表達式是什么&#xff1f; Lambda表達式時C11引入的語法&#xff0c;本質上是一個匿名函數&#xff0c;用[ ] () {}三個符號組成表達式。 格式為&#xff1a;[capture list] (params list) …

【文件處理】——字典寫入json文件或TXT文件,讀取文件中的字典TypeError: Object of type ‘ndarray‘ is not JSON serializable錯誤解決方法

目錄 一、將字典寫入json文件 二、json文件中讀取字典 三、將字典寫入TXT文件中 四、從TXT中讀取字典 五、解決字典含數組存入json文件失敗的方法 1、存入前將數組變成列表 2、擴展類方法 一、將字典寫入json文件 import jsontest_dict {version: "1.0",exp…

js一些實用例子

1.獲取焦點選中文本內容 $("#id").focus(function(){ this.select(); }); 2.表單提交方式 A.自動提交 setTimeout(function(){表單對象.submit();},2000); B.onclick事件提交(鏈接提交) <input type"submit" value"提交" οnclick"retur…

360安全衛士加速球誤關閉某個應用軟件

近期因為工作原因須要使用金山快盤。但因為之前電腦上安裝了360安全衛士&#xff0c;在使用加速球功能的時候&#xff0c;會出現&#xff0c;誤關閉金山快盤的操作&#xff0c;怎么避免呢&#xff1f; 1、打開360主界面。找到安全防護中心&#xff0c;例如以下圖&#xff1a; 2…

C++STL總結筆記(一)—— 容器和容器適配器

文章目錄前言一、概念1.1 順序容器1.2 容器適配器1.3 關聯容器二、程序示例1. vector和Set自定義數據類型的訪問2.vector容器嵌套3.list容器排序4.pair對組的使用總結前言 STL是C中的基于數據結構和算法的標準模板庫&#xff0c;可以大量節約系統開發時間&#xff0c;增加程序…

【圖像處理】——比特平面原理和實現方法(全網較全面,含所有比特位圖的分層方法)

目錄 一、比特平面 1st比特平面:括號里面的為比特值,前面的是原圖像中對應要變為0的像素值

20145238-荊玉茗 《信息安全系統設計基礎》第7周學習總結

20145238 《信息安全系統設計基礎》第7周學習總結 教材學習內容總結 存儲器系統 : 存儲器系統是一個具有不同容量、成本和訪問時間的存儲設備的層次結構。 1、RAM隨機訪問存儲器 分類&#xff1a;SRAM&#xff08;靜態&#xff09;、DRAM&#xff08;動態&#xff09;特點&…

關于兩個jar包中存在包名和類名都完全相同的jar包沖突問題

2019獨角獸企業重金招聘Python工程師標準>>> 最近弄webservice&#xff0c;我使用的jdk自帶的wsimport工具來生成客戶端代碼&#xff0c;發現生成的代碼具有編譯錯誤&#xff0c;錯誤描述如下&#xff1a; The method getPort(QName, Class<T>) in the type S…

限制文本框只能輸入數字和小數點

<input type"text" class"NumText" placeholder"只能輸入數字&#xff08;可含有小數點&#xff09;"/><style> .NumText{width:200px;} .NumText::-webkit-input-placeholder{color:#F1923C;} .NumText:-moz-placeholder{…

C++STL總結筆記(二)——仿函數(函數對象)

文章目錄一、概念總結一、概念 仿函數又稱函數對象&#xff0c;即重載了函數調用運算符&#xff08;&#xff09;的類的對象。 優勢&#xff1a; 1.仿函數對象的內部可以有自己的狀態&#xff0c;可以實現一些其他的功能。 2.函數對象可以作為參數進行傳遞。 當仿函數類內重載…

【圖像處理】——灰度變換心得(cv2.normalize規范化值0-255,cv2.convertScaleAbs(new_img)轉為8位圖)

目錄 一、灰度變換函數 對數變換 加碼變換 常見雷點 常見灰度變換函數

SQL Server2008 表旋轉(pivot)技術

參考資料&#xff1a; http://www.cnblogs.com/xiashengwang/p/3503554.html轉載于:https://www.cnblogs.com/lihuali/p/6014776.html

const和define 區別

1&#xff1a; 編譯器處理不同 define宏是在預處理階段展開&#xff0c;const常量是編譯運行階段使用。 2&#xff1a;類型和安全檢查不同 const常量有數據類型&#xff0c;而宏常量沒有數據類型&#xff0c;僅僅是展開。編譯器可以對前者進行類型安全檢查&#xff0c;而對后者…

學習筆記(三)

一.調試模式 define(APP_DEBUG, true); 調試模式的優勢在于&#xff1a; 開啟日志記錄&#xff0c;任何錯誤信息和調試信息都會詳細記錄&#xff0c;便于調試&#xff1b;  關閉模板緩存&#xff0c;模板修改可以即時生效&#xff1b;  記錄SQL日志&#xff0c;方便分析SQL…

【項目實戰】——Python打包正裝換底色代碼為exe文件(可在其他無Python環境下運行)

目錄 1.安裝pyinstaller 2.生成.exe文件 方法1&#xff1a; 方法2&#xff1a; 方法3&#xff1a; &#xff08;1&#xff09;使用命令行窗口進入項目的根目錄 &#xff08;2&#xff09;在改目錄下執行pyi-makespec main.py&#xff08;main.py是你的主入口文件&#x…

C++STL總結筆記(三)—— 常見算法

文章目錄一、基本概念二、程序示例1.遍歷2. 查找3. 排序、拷貝、替換4. numeric相關算法總結一、基本概念 算法是STL中很重要的一部分&#xff0c;其功能包括比較&#xff0c;查找&#xff0c;排序&#xff0c;交換&#xff0c;遍歷&#xff0c;復制等等。 最大的算法頭文件是…

Java zip解壓,并遍歷zip中的配置文件 .cfg或.properties

1.解析cfg或properties配置文件 講配置文件&#xff0c;讀取&#xff0c;并封裝成為map類型數據 /*** 解析cfg文件** param cfgFile* return*/public static Map<String, Object> readCfg(FileInputStream cfgFile) {Properties prop new Properties();Map<String, O…

db2 常用配置

db2set配置&#xff1a; db2set DB2_ENABLE_LDAPNO db2set DB2_ALTERNATE_GROUP_LOOKUPGETGROUPLIST db2set DB2_RESTORE_GRANT_ADMIN_AUTHORITIESON db2set DB2_SKIPINSERTEDON db2set DB2_LOAD_COPY_NO_OVERRIDENONRECOVERABLE db2set DB2_EVALUNCOMMITTEDON db2set DB2_SKIP…

安裝完最小化 RHEL/CentOS 7 后需要做的 30 件事情(三)碼農網

12. 安裝 Apache Tomcat Tomcat 是由 Apache 設計的用來運行 Java HTTP web 服務器的 servlet 容器。按照下面的方法安裝 tomcat&#xff0c;但需要指出的是安裝 tomcat 之前必須先安裝 Java。 # yum install tomcat 安裝 Apache Tomcat 安裝完 tomcat 之后&#xff0c;啟動 to…