第二篇 MySQL數據庫基本操作
2.1 操作數據庫
- SHOW DATABASES;----->顯示數據庫
- CREATE DATABASE 數據庫名;------>創建數據庫
- DROP DATABASES 數據庫名;-------->刪除數據庫
- SHOW ENGINES\G;------->查看MySQL數據庫支持的存儲引擎類型【\G 顯示的更加美觀】
存儲引擎指表的類型。數據庫的存儲引擎決定了表在計算機中的存儲方式。當創建表時,若沒有指定存儲引擎,表的存儲引擎將爲默認的存儲引擎。MySQL支持的存儲引擎包括MyISAM、MEMORY、InnoDB、ARCHIVE和MRG_MYISAM等,其中InnoDB爲默認存儲引擎。
InnoDB存儲引擎支持自動增長列AUTO_INCREMENT。自動增長列的值不能爲空且空值必須唯一。Mysql中規定自增長列必須爲主鍵。
InnoDB存儲引擎中支持外鍵(FOREIGN KEY),外鍵所在的表爲子表,外鍵所
依賴的表爲父表。父表中被子表外鍵關聯的字段必須爲主鍵。當刪除、更新父表的某條信息時,子表也必須有相應的改變。
2.2創建、修改和刪除表 CREATE、ALTER、DROP
表是數據庫存儲數據的基本單位。一個表包含若干個字段或記錄。
- USE 數據庫名---->選擇數據庫(創建表時必須先選擇數據庫)
- CREATE TABLE 表名(屬性名 數據類型[完整性約束條件],
……
屬性名 數據類型);----->創建表
‘表名’參數表示所要創建的表的名稱;‘屬性名’:表中字段的名稱;‘數據類型’:指定字段的數據類型。
3.設置表的主鍵(該字能唯一地標識該表中的每條信息)
主鍵必須滿足的條件:主鍵必須是唯一的,表中任意兩條記錄的主鍵字段的值不能相同;主鍵的值是非空值;主鍵可以是單一的字段,也可以是多個字段的組合。
A.屬性名 數據類型 PRIMARY KEY------>單字段主鍵
- PRIMARY KEY(屬性名1,屬性名2,……,屬性名n)---->多字段主鍵
stu_id 和 course_id 兩個字段成爲主鍵;stu_id和course_id兩者的組合可以確定唯一的一條記錄。
4、設置表的外鍵
如果字段sno是一個表A 的屬性,且依賴於表B的主鍵。那麼,稱表B爲父表,表A爲子表,sno爲表A的外鍵。通過sno字段將父表B和子表A建立關聯關係。設置表的外鍵指在創建某個字段的外鍵。【constraint 限制,限定,references 參考】
CONSTRAINT 外鍵別名 FOREIGN KEY(屬性1.1,屬性1.2,……,屬性1.n)
REFERENCES 表名(屬性2.1,屬性2.2,……,屬性2.n)
其中,”外鍵別名”參數是爲外鍵的代號;‘屬性1’參數列表是子表中設置的外鍵;‘表名’參數是指父表的名稱;‘屬性2’參數列表是父表的主鍵。
id字段是主鍵;stu_id和course_id子段爲外鍵;c_fk是外鍵的別名;example2表稱爲example3表的父表;example3表的外鍵依賴於父表example3的主鍵stu_id和course_id。
5. 設置表的非空約束
非空約束將保證所有記錄中該字段都有值。
屬性名 數據類型 NOT NULL
5、設置表的唯一性約束
唯一性是指所有記錄中該字段的值不能重複出現。唯一性約束將保證所有記錄中該字段的值不能重複出現。
屬性名 數據類型 UNIQUE
stu_id字段爲唯一值,該字段的值不能重複。
6、設置表的屬性值自動增加
表中插入新紀錄自動生成唯一的id。一個表只能有一個字段使用auto_increment約束,且該字段必須爲主鍵的一部分。
屬性名 數據類型 AUTO_INCREMENT
在插入記錄時,默認的情況下自增字段的值從1開始自增。
7、設置表的屬性的默認值
屬性名 數據類型 DEFAULT 默認值
8、SHOW TABLES------>查看數據庫中所有表
2.3 查看錶結構 DESC
查看錶結構是指查看數據庫中已存在的表的定義。
1、查看錶基本結構語句 DESCRIBE
DESCRIBE(DESC) 表名;
顯示了字段的數據類型(type);是否爲空(null),是否爲主外鍵(key);默認值(default)和額外信息(extra)
2、查看錶詳細結構語句 SHOW CREATE TABLE
SHOW CREATE TABLE 表名;