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() 得到當前打開的資料庫