MySQL啓程學習回憶錄1

一、MySQL 使用

1. 啓動 mysql 服務(避免“服務名無效”)

MySQL 安裝過程中配置服務名,如 5.7.+ 版本默認爲 MySQL57。則 windows 下啓動命令爲:

>net start MySQL57

這裏寫圖片描述

這裏寫圖片描述

2. 停止 mysql 服務

管理員/方式一:>net stop MySQL57
非管理員/方式二:>mysqladmin -uroot shutdown -p1231

3. 登錄/退出 mysql

登錄:
>mysql -uroot -p -hlocalhost

退出:
mysql> exit;
mysql> quit;
mysql> \q;1

參數 描述
-u 用戶名
-p 密碼
-P 端口號
-h 服務器名稱
–prompt 修改提示符 日期\D,數據庫\d,服務器\h,用戶\u

4. 其他常用命令

mysql> 命令 描述
USE db_Name; 打開數據庫
SELECT DATABASE(); 當前數據庫
SELECT VERSION(); 當前服務器版本
SELECT NOW(); 當前日期時間
SELECT USER(); 當前用戶
SET NAME gbk/utf8; 修改客戶端編碼方式
DELIMITER 修改編輯時結束符/定界符

二、數據庫

數據庫操作 語法結構
數據庫創建信息 SHOW CREATE {DATABASES/SCHEMAS} db_name;
數據庫列表 SHOW {DATABASES/SCHEMAS} [LINKE ‘pattern’/WHERE expr];
創建數據庫 CREQTE {DATABASE/SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;
修改數據庫編碼 ALTER {DATABASE/SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] chartset_name;
修改數據庫名稱 RENAME {DATABASE/SCHEMA} db_name TO new_db_name;
刪除數據庫 DROP {DATABASE/SCHEMA} [IF EXISTS] db_name;

三、數據表

1. 數據表操作

數據表操作 語法結構
查看數據表列表 SHOW TABLES [FROM db_name] [LINK ‘pattern’/WHERE expr];
查看數據表結構 SHOW COLUMNS FROM tbl_name;
創建數據表 CREATE TABLE [IF NOT EXISTS] table_name (
column_name data_type,

);
修改表名稱 ALTER TABLE tbl_name RENAME [TO/AS] new_name;
or
RENAME TABLE tbl_name TO new_name [,tbl_name2 TO new_name2…];
多表連接 tbl1 {[INNER/CROSS] JOIN/{LEFT/RIGHT} [OUTER] JOIN} tbl2 ON {expr}
單表擬多表連接 tbl AS s {[INNER/CROSS] JOIN/{LEFT/RIGHT} [OUTER] JOIN} tbl AS p ON {expr}

2. 數據表列/字段操作

數據表列操作 語法結構
查看列 DESC tbl_name;
插入列 ALTER TABLE tbl_name ADD COLUMN col_name data_type;
刪除列 ALTER TABLE tbl_name DROP COLUMN col_name;
修改列屬性 ALTER TABLE tbl_name MODIFY col_name data_type;
修改列名 ALTER TABLE tbl_name CHANGE col_name new_name data_type;
跨表列數據插入 INSERT tbl1(rol_name) SELECT rol_name2 FROM tbl2 GROUP BY rol_name2;
跨表列數據更新 UPDATE tbl1 INNER JOIN tbl2 ON {exper} SET tbl1.col1 = tbl2.col2;

2. 數據錶行/記錄操作

數據錶行操作 語法結構
查看行 SELECT expr,…
[
    FROM tbl_references
    [WHERE where_condition]條件查詢
    [GROUP BY {col_name/position}]分組查詢
    [HAVING where_condition]分組查詢條件折設置
    [ORDER BY {col_name/expr/position}[ASC/DESC],…]查詢結果排序
    [LIMIT{[offset,] row_count/row_conunt OFFSET offset}限制返回結果數量
];
插入行 INSERT [INTO] tbl_name [(col_name,…)] {VALUES/VALUE}({expr/DEFAULT},…),…;
or
INSERT [INTO] tbl_name SET col_name={expr/DEFAULT},…;
or
INSERT [INTO] tbl_name [(col_name),…] SELECT…;
更新行 UPDATE [LOW_PRIORITY] [IGNORE] tbl_reference SET col_name1={expr/DEFAULT}[,… WHERE where_condition];
刪除行 DELETE FROM tbl_name [WHERE where_condition];

4. 數據表屬性

屬性 描述
NULL, NOT NULL 字段記錄可空/不可爲空
PRIMARY KEY 主鍵約束
AUTO_INCREMENT 自動編號(默認起始值爲1,一張表只能有一個字段設置)
UNIQUE KEY 唯一約束(一張表可以有多個字段設置)
DEFAULT 默認值(日期時間:TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)
UNSIGNED 無符號類型

4. 數據表約束

4.1 PRIMARY KEY 主鍵約束

語法:

約束操作 具體實現
添加 ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY (index_type) (index_col_name,…);

4.2 FOREIGN KEY 外鍵約束

描述 :
外鍵約束,保持數據一致性,完整性。實現一對一或一對多關係

要求 :
a. 父表與子表必需使用相同的存儲引擎
b. 數據表的存儲引擎只能爲InnoDB(配置文件設置)
c. 外鍵列和參照列必需具有顯示的數據類型。其中數值的長度或是否有符號位必需相同;而字符的長度則可以不同
d. 外鍵列和參照列必修創建索引。如果外鍵列不存在索引的話,MySQL將自動創建索引

語法:

約束操作 具體實現
添加 ALTER TABLE tbl_name [CONSTRAINT [symbol]] FOREIGN KEY (id) REFERENCES tbl_name2 (id2) [ON DELETE/UPDATE {CASCADE/SET NULL/NO ACTION/RESTRICT}];
查看約束 SHOW CREATE TABLE tbl_name;
刪除 ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol;

4.3 UNIQUE 唯一約束

語法:

約束操作 具體實現
添加 ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX/KEY] [index_type] (index_col_name,…);
查看約束 SHOW INDEX FROM tbl_name;
刪除 ALTER TABLE tbl_name DROP {INDEX/KEY} index_name;

4.4 DEFAULT 默認約束

語法:

約束操作 具體實現
添加 ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal};
刪除 ALTER TABLE tbl_name ALTER [COLUMN] col_name {DROP DEFAULT};

4.5 NOT NULL 非空約束


MySQL啓程學習回憶錄1
MySQL啓程學習回憶錄2
MySQL啓程學習回憶錄3


感謝慕課平臺

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章