免费男女视频_国产系列 视频二区_羞羞视频免费入口网站_久国久产久精永久网页_国产免费观看av_一区二区三区日韩在线观看

MySQL常用操作语句


說明:文中[]以及括號內的內容為可選參數,根據實際需要來決定寫還是不寫。

MySQL數據庫默認端口是 3306

 

基本操作

1、查看MySQL數據庫服務器和數據庫字符集   show variables like '%char%';

2、查看MySQL數據表的字符集     show table status from 要查詢的庫 like '%要查詢的表%';

3、查看MySQL數據列的字符集     show full columns from 要查詢的表;

4、查看當前安裝的MySQL所支持的字符集    show charset;

5、創建數據庫時,設定字符集為utf8   create database 數據庫名 character set utf8;

6、查看MySQL數據庫支持的存儲引擎    show engines;  或  show variables like 'have%';

7、查看默認存儲引擎          show variables like 'storage_engine';

8、數據庫登錄      mysql -h localhost -u root -p;

9、刪除數據庫     drop database 要刪除的數據庫名;

10、創建表  CREATE TABLE 表名(字段 屬性,字段 屬性,字段 屬性);

11、查看表結構    describe 表名;

12、查看表詳細結構語句  SHOW CREATE TABLE 表名 \G;

13、修改表名   ALTER TABLE 舊表名 RENAME 新表名;

14、修改字段的數據類型   ALTER TABLE 表名 MODIFY 屬性名 數據類型;

15、修改字段名   ALTER TABLE 表名 CHANGE 舊屬性名 新屬性名 新數據類型;

16、增加字段     ALTER TABLE 表名 ADD 屬性名1 數據類型 [ 完整性約束條件 [FIRST] AFTER 屬性名2 ];

17、刪除字段     ALTER TBALE 表名 DROP 屬性名;

18、修改字段的排列位置    ALTER TABLE 表名 MODIFY 屬性名1 數據類型 FIRST|AFTER 屬性名2;

19、更改表的存儲引擎      ALTER TABLE 表名 ENGINE=存儲引擎名;

20、刪除表的外鍵約束      ALTER TABLE 表名 DROP FOREIGN KEY 外鍵別名;

21、刪除沒有被關聯的普通表    DROP TABLE  表名;

22、刪除被其他表關聯的父表

    (1)先刪除有關聯表的外鍵   ALTER TABLE  有關聯的表名 DROP FOREIGN KEY 外鍵名;

   (2)再刪除要刪除的表      DROP TABLE  表名;

23、創建表時,創建普通索引,在建表的時候,語句最后加入    INDEX(要建立索引的字段);

24、創建表時,創建唯一性索引,在建表的時候,語句最后加入  UNIQUE INDEX 索引名(索引字段 ASC);

25、創建表時,創建全文索引,在建表的時候,語句最后加入    FULLTEXT INDEX 索引名 (要建立索引的字段);

26、創建表時,創建單列索引,在建表的時候,語句最后加入    INDEX 索引名(要建立索引的字段);

27、創建表時,創建多列索引,在建表的時候,語句最后加入    INDEX 索引名(要建立索引的字段1,要建立索引的字段2);

28、創建表時,創建空間索引,在建表的時候,語句最后加入    SPATIAL INDEX 索引名(要建立索引的字段);

29、在已經存在的表上創建索引  CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 ON 表名 (屬性名 [(長度)] [ASC|DESC]);

(1)、在已經存在的表上創建唯一性索引   CREATE UNIQUE INDEX 索引名 ON 表名(要建立索引的字段);

(2)、在已經存在的表上創建全文索引   CREATE FULLTEXT INDEX 索引名 ON 表名(要建立索引的字段);

(3)、在已經存在的表上創建單列索引   CREATE INDEX 索引名 ON 表名(要建立索引的字段);

(4)、在已經存在的表上創建多列索引   CREATE INDEX 索引名 ON 表名(要建立索引的字段1,要建立索引的字段2);

(5)、在已經存在的表上創建空間索引   CREATE SPATIAL 索引名 ON 表名(要建立索引的字段);

30、在已經存在的表上修改索引  ALTER TABLE 表名 ADD [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 (屬性名 [(長度)] [ASC|DESC]);

(1)、普通索引   ALTER TABEL 表名 ADD INDEX 索引名(要建立索引的字段);                      

(2)、唯一性索引   ALTER TABEL 表名 ADD UNIQUE INDEX 索引名(要建立索引的字段);

(3)、全文索引 ALTER TABLE 表名 ADD FULLTEXT INDEX 索引名(要建立索引的字段);

(4)、單列索引 ALTER TABLE 表名 ADD INDEX 索引名(要建立索引的字段);

(5)、多列索引 ALTER TABLE 表名 ADD INDEX 索引名(要建立索引的字段1,要建立索引的字段2);

(6)、空間索引 ALTER TABLE 表名 ADD SPACIAL INDEX 索引名(要建立索引的字段);

31、刪除索引 DROP INDEX 索引名 ON 表名;

32、創建視圖 CREATE [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}] VIEW AS SELECT 語句[WITH [CASCADED|LOCAL] CHECK OPTION];

備注:

UNDEFINED表示MYSQL將自動選擇所要的使用的算法;

MERGE選項表示將使用視圖的語句與視圖定義合并起來;

TEMPTABLE表示將視圖的結果存入臨時表,用臨時表執行語句。

CASCADED表示更新視圖時要滿足所有相關視圖表和表的條件,

LOCAL表示更新視圖時,要滿足該視圖本身的定義的條件即可。

33、在VIEW表中查看視圖詳細信息 SELECT * FROM INFORMATION_SCHEMA.VIEWS;

34、修改視圖方法一 

CREATE OR REPLACE [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}] VIEW 視圖名 [(屬性清單)] AS SELECT 語句[WITH [CASCADED|LOCAL] CHECK OPTION];

35、修改視圖方法二

ALTER [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}] VIEW 視圖名 [(屬性清單)] AS SELECT 語句[WITH [CASCADED|LOCAL] CHECK OPTION];

36、刪除視圖  DROP VIEW [IF EXISTS] 視圖名列表 [RESTRICT|CASCADE];

 

初級操作

1、創建觸發器   CREATE TRIGGER 觸發器名 BEFORE|AFTER 觸發事件 ON 表名 FOR EACH ROW 執行語句;

2、創建有多個執行語句的觸發器

DELIMITER &&

CREATE TRIGGER 觸發器名 BEFOR|AFTER 觸發事件 ON 表名 FRO EACH ROW

       BEGIN

           執行語句1;

           執行語句2;

       END

       &&

DELIMITER;

3、查看觸發器信息  SHOW TRIGGERS \G

4、查詢指定觸發器信息  SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_NAME ='觸發器名';

5、刪除觸發器  DROP TRIGGER 觸發器名;

6、查詢 SELECT 字段列表 FROM 表名和視圖列表 WHERE 條件表達式;

7、排序 SELECT 字段列表 FROM 表名和視圖列表 WHERE 條件表達式 ORDER BY 要排序的字段 ASC|DESC;

8、分組查詢   SELECT 字段列表 FROM 表名和視圖列表 GROUP BY 要分組的字段;

9、分組查詢顯示分組的所有元素  SELECT 字段列表,GROUP_CONCAT(要全部顯示的字段) FROM 表名和視圖列表 GROUP BY 要分組的字段;

10、分組字段中元素的個數   SELECT 字段列表,COUNT(要全部顯示的字段) FROM 表名和視圖列表 GROUP BY 要分組的字段;

11、分組限制輸出結果     SELECT 字段列表 FROM 表名和視圖列表 GROUP BY 要分組的字段 HAVING 條件表達式;

12、分組記錄分組個數總和 SELECT 字段列表 FROM 表名和視圖列表 GROUP BY 要分組的字段 WITH ROLLUP;

13、限制查詢結果數量     SELECT * FROM 表名和視圖列表 LIMIT 數字;

14、限制查詢結果數量,指定初始位置  SELECT * FROM 表名和視圖列表 LIMIT 起始數字,顯示的數量;

15、統計記錄條數   SELECT COUNT(*) FROM 表名和視圖列表;

16、統計某個字段數據的和  SELECT SUM(要統計的字段) FROM 表名和視圖列表;

17、統計某個字段的平均值  SELECT AVG(要統計的字段) FROM 表名和視圖列表;

18、某個字段的最大值      SELECT MAX(要統計的字段) FROM 表名和視圖列表;

19、某個字段的最小值      SELECT MIN(要統計的字段) FROM 表名和視圖列表;

20、內連接查詢 SLECT 屬性名列表 表名1,表名2 WHERE 表名1.字段名1=表名2.字段名2;

21、外接接查詢 SLECT 屬性名列表 表名1 LEFT|RIGHT|JOIN 表名2 ON 表名1.字段名1=表名2.字段名2;

22、子查詢 SELECT COUNT(*) FROM 表名和視圖列表 WHERE 字段 IN (子查詢語句);

23、合并查詢  SELECT 語句1 UNION|UNION ALL SELECT 語句2;

24、為表起別名  SELECT 字段列表 FROM 表名和視圖列表 別名;

25、為字段起別名  SELECT 字段列表 AS 別名 FROM 表名和視圖列表

26、使用正則表達式  SELECT 字段列表 FROM 表名和視圖列表 WHERE 字段名 REGEXP '正則表達式';

27、插入數據  INSERT INTO 表名(屬性1,屬性2,...,屬性n) VALUES(值1,值2,...,值n);

28、更新數據  UPDATE 表名 屬性名1=取值1,屬性名2=取值2,...屬性名n=取值n WHERE 條件表達式;

29、刪除數據  DELETE FROM 表名 WHERE 條件表達式;

30、創建存儲過程  CREATE PROCEDURE 存儲過程名稱 (參數列表) 存儲過程特性 SQL代碼;

例如:創建一個名為num_from_employee 的存儲過程

CREAT PROCEDURE num_from_employee(IN emp_id int,OUT count_num INT)

       READS SQL DATA

       BEGIN

          SELECT COUNT(*) INTO count_num

          FROM employee

          WHERE d_id=emp_id;

       END

 

備注:

CONTAINS SQL表示子程序包含SQL語句,但不包含讀或寫數據的語句;

NO SQL 表示子程序中不包含SQL語句;

READS SQL DATA 表示子程序中包含讀數據的語句;

MODIFIES SQL DATA 表示子程序中包含寫數據的語句。

 

31、創建存儲函數 CREATE FUNCTION 函數名 (參數列表) 存儲過程特性 RETURNS Type 運行的SQL代碼;

例如:創建一個名為name_from_employee 的存儲過程

CREAT FUNCTION name_from_employee(emp_id INT)

       RETURNS VARCHAR(20)

       BEGIN

          RETURN (SELECT name

          FROM employee

          WHERE d_id=emp_id);

       END

32、查看存儲過程和函數的狀態 SHOW PROCEDURE|FUNCTION STATUS LKE '存儲過程名稱' \G;

33、查看存儲過程和函數的定義 SHOW CREATE PROCEDURE|FUNCTION 存儲過程名稱;

 

34、從INFORMATION_SCHEMA.ROUTINES 表中查看存儲過程和函數的信息

SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_NAME='存儲過程名稱';

 

35、修改存儲過程和函數 ALTER PROCEDURE|FUNCTION 存儲過程名稱 執行語句;

36、刪除存儲過程和函數  DROP PROCEDURE|FUNCTION 存儲過程名稱;

 

37、新建普通用戶

方法一  CREATE USER 用戶名 IDENTIFIED BY '密碼';

方法二  GRANT priv_type ON database.table TO 用戶名 IDENTIFIED BY '密碼';

38、刪除普通用戶 DROP USER 用戶名;

39、ROOT用戶修改普通用戶密碼

方法一  SET PASSWORD FOR '用戶名'@'主機名'=PASSWORD("新密碼");

方法二  UPDATE mysql.user SET Password=PASSWORD("新密碼") WHERE User="用戶名" AND Host="主機名";

40、普通用戶修改密碼  SET PASSWORD=PASSWORD('新密碼');

41、數據備份  mysqldump -u username -p dbname table1 table2 ...>Backupname.sql

42、備份多個數據庫 mysqldump -u username -p --database dbname1 dbname2 ...>BackupName.sql

43、數據還原 mysql -u root -p [dbname]<backup.sql

44、查看MySQL數據庫的性能    SHOW STATUS LIKE 'value';

45、分析查詢,查看SQL語句執行情況 EXPLAIN SELECT 語句;

 

[參考文獻] 黃縉華.MySQL入門很簡單[M].北京:清華大學出版社,2011.

主站蜘蛛池模板: chengrenzaixian| 爱爱视频天天干 | 91成人影库 | av在线直播观看 | 亚洲一区二区中文字幕在线观看 | 国产精品久久久久久久午夜片 | 久久人人av| 中文字幕在线免费播放 | 亚洲精品在线观看网站 | 性欧美日本 | 国产精品av久久久久久网址 | 国产一级片91 | 91在线色视频 | 亚洲二区不卡 | 日韩伦理电影免费观看 | 一级大黄毛片免费观看 | 717影院理论午夜伦八戒秦先生 | 看免费5xxaaa毛片 | 老司机免费福利午夜入口ae58 | 亚洲视频在线网 | 久久精品99久久久久久2456 | 91精品国产综合久久久动漫日韩 | 精品国产一区二区三区久久久蜜月 | a一级黄色大片 | 女人久久久www免费人成看片 | 视频一区二区三区在线 | 日韩伦理电影免费观看 | 欧美一级高清免费 | 久久精品无码一区二区三区 | 国产九九九九 | 欧美亚洲啪啪 | 最新av网址在线观看 | 国产免费高清 | 日韩在线欧美在线 | 亚洲精品午夜国产va久久成人 | 日本精品免费观看 | 欧美精品一区二区中文字幕 | 久久国产精品一区 | 欧美一级高清免费 | 欧美成人免费一级 | 成人综合区一区 |