MySQL常用命令學習筆記

  • 2019 年 10 月 4 日
  • 筆記

MySQL常用命令學習筆記

一、資料庫相關操作

1)創建資料庫

CREATE {DATABASE|SCHEMA} db_name;

檢測資料庫名稱是否存在,不存在則創建 CREATE DATABASE [IF NOT EXISTS] db_name;

在創建資料庫的同時指定編碼方式

CREATE DATABASE [IF NOT EXISTS] db_name [DEFAULT]

CHARACTER SET [=] charset;

2)查看當前伺服器下全部資料庫 SHOW DATABASES|SCHEMAS;

3)查看指定資料庫的詳細資訊 SHOW CREATE DATABASE db_name;

4)修改指定資料庫的編碼方式

ALTER DATABASE db_name [DEFAULT] CHARACTER SET [=]

charset;

5)打開指定資料庫 USE db_name;

得到當前打開的資料庫 SELECT DATABASE()|SCHEMA();

6)刪除指定的資料庫

DROP DATABASE db_name;

如果資料庫存在則刪除 DROP DATABASE [IF EXISTS] db_name;


二、數據表相關操作

1)創建表

CREATE TABLE [IF NOT EXISTS] tbl_name(

欄位名稱 欄位類型 [完整性約束條件],

欄位名稱 欄位類型 [完整性約束條件],

)ENGINE=存儲引擎 CHARSET=編碼方式;

2)查看當前資料庫下已有數據表

SHOW TABLES;

SHOW [FULL] TABLES [{FROM | IN} db_name]

[LIKE 'pattern' | WHERE expr]

3)查看指定數據表的詳細資訊 SHOW CREATE TABLE tbl_name;

4)查看錶結構

DESC tbl_name;

DESCRIBE tbl_name;

SHOW COLUMNS FROM tbl_name;

5)刪除指定的數據表 DROP TABLE [IF EXISTS] tbl_name;


三、數據表結構相關操作

1)添加欄位

ALTER TABLE tbl_name

ADD 欄位名稱 欄位屬性 [完整性約束條件] [FIRST|AFTER 欄位名稱]

2)刪除欄位

ALTER TABLE tbl_name

DROP 欄位名稱

3)添加默認值

ALTER TABLE tbl_name

ALTER 欄位名稱 SET DEFAULT 默認值;

4)刪除默認值

ALTER TABLE tbl_name

ALTER 欄位名稱 DROP DEFAULT

5)修改欄位類型、欄位屬性

ALTER TABLE tbl_name

MODIFY 欄位名稱 欄位類型 [欄位屬性] [FIRST | AFTER 欄位名稱]

6)修改欄位名稱、欄位類型、欄位屬性

ALTER TABLE tbl_name

CHANGE 原欄位名稱 新欄位名稱 欄位類型 欄位屬性 [FIRST |

AFTER 欄位名稱]

7)添加主鍵

ALTER TABLE tbl_name

ADD PRIMARY KEY(欄位名稱)

8)刪除主鍵

ALTER TABLE tbl_name

DROP PRIMARY KEY;

9)添加唯一

ALTER TABLE tbl_name

ADD UNIQUE KEY|INDEX [index_name] (欄位名稱)

10)刪除唯一

ALTER TABLE tbl_name

DROP index_name;

11)修改數據表名稱

ALTER TABLE tbl_name

RENAME [TO|AS] new_tbl_name

RENAME TABLE tbl_name TO new_tbl_name;

12)修改AUTO_INCREMENT的值

ALTER TABLE tbl_name AUTO_INCREMENT=值


四、數據表數據相關操作

1、添加記錄

1)INSERT [INTO] tbl_name[(col_name,…)] {VALUE|VALUES}(

VALUES…);

2)不指定欄位名稱

INSERT tbl_name VALUE(value…)

需要按照建表時的欄位順序給每一個欄位賦值

3)列出指定欄位 INSERT tbl_name(欄位名稱,…) VALUES(值,…)

4)INSERT … SET的形式 INSERT tbl_name SET 欄位名稱=值,…;

5)INSERT … SELECT

INSERT tbl_name[(欄位名稱…)] SELECT 欄位名稱,… FROM tbl_

name [WHERE 條件]

6)一次添加多條記錄

INSERT tbl_name[(欄位名稱,…)] VALUES(值,…),

(值,….),

(值,…)

2、修改記錄

UPDATE tbl_name SET 欄位名稱=值,欄位名稱=值 [WHERE 條件]

如果不添加條件,整個表中的記錄都會被更新

3、刪除記錄

1)DELETE FROM tbl_name [WHERE 條件]

2)如果不添加條件,表中所有記錄都會被刪除

3)DELETE 清空數據表的時候不會重置AUTO_INCREMENT的值,可以

通過ALTER 語句將其重置為1

4)徹底清空數據表 TRUNCATE [TABLE] tbl_name;

清除表中所有記錄

會重置AUTO_INCREMENT的值

4、查詢記錄

1)SELECT select_expr,… FROM tbl_name

[WHERE 條件]

[GROUP BY {col_name|position} HAVING 二次篩選]

[ORDER BY {col_name|position|expr} [ASC|DESC]]

[LIMIT 限制結果集的顯示條數]

2)查詢表中所有記錄 SELECT * FROM tbl_name; *所有欄位

3)指定欄位的資訊 SELECT 欄位名稱,… FROM tbl_name

4)庫名.表名 SELECT 欄位名稱,… FROM db_name.tbl_name;

5)給欄位起別名 SELECT 欄位名稱 [AS] 別名名稱,… FROM db_name.tbl_name;

6)給數據表起別名 SELECT 欄位名稱 ,… FROM tbl_name [AS] 別名;

7)表名.欄位名的 SELECT tbl_name.col_name,… FROM tbl_name;

常用SQL語句

SELECT USER() 得到登陸的用戶

SELECT VERSION() 得到MySQL的版本資訊

SELECT NOW() 得到當前的日期時間

SELECT DATABASE() 得到當前打開的資料庫