您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Mysql中怎么創建數據表,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創建數據表
在Mysql中,創建數據表通過SQL語句CREATE TABLE實現:
CREATE TABLE 表名( 屬性名 數據類型 [完整性約束條件],
屬性名 數據類型 [完整性約束條件],
、、、、、
屬性名 數據類型 [完整性約束條件],
);
“表名”為要創建數據表的名字,“屬性名”參數表示表中字段的名稱,“數據類型”參數指定字段的數據類型。
注意:在創建數據表之前必須先用USE語句選擇,格式為;USE 數據庫名
實例1:
[sql]
CREATE TABLE example(id INT,
name VARCHAR(20),
sex BOOLEAN
);
設置表的主鍵
1、單字段主鍵
主鍵是由一個字段構成時,可以直接在該字段的后面加上 PRIMARY KEY 來設置主鍵:
屬性名 數據類型 PRIMARY KEY
實例2:
[sql]
CREATE TABLE example1(stu_id INT PRIMARY KEY,
stu_name VARCHAR(20),
stu_sex BOOLEAN
);
2、多字段主鍵
主鍵是由多個屬性組合而成的,在屬性定義完之后統一設置主鍵,如下:
實例3:
[sql]
CREATE TABLE example2(stu_id INT,
course_id INT,
grade FLOAT,
PRIMARY KEY(stu_id, course_id)
);
3、設置表的外鍵
設置外鍵的原則就是必須依賴數據庫中已經存在的父表主鍵,外鍵可以為空值。外鍵的作用是建立該表與其父表之間的關聯關系。父表中刪除某條信息時,子表中與之對應的信息也必須發生相應的改變。
設置外鍵的基本語法為:
CONSTRAINT 外鍵別名 FOREIGN KEY (屬性1.1,屬性1.2,、、、、、、屬性1.n)
REFERENCES 表名(屬性2.1,屬性2.2,、、、、、、屬性2.n)
其中,“外鍵別名”參數是為外鍵的代號,“屬性1” 參數列表是子表中設置的外鍵,“表名”參數是指父表的名稱,“屬性2”參數列表是父表的主鍵。
實例4:
[sql]
CREATE TABLE example3(id INT PRIMARY KEY,
stu_id INT,
course_id INT,
CONSTRAINT c_fk FOREIGN KEY(stu_id, course_id)
REFERENCES example2(stu_id, course_id)
);
解釋:id字段為主鍵,stu_id和course_id字段為外鍵,c_fk為外鍵別名,example2表成為example3表的父表,example3中的stu_id和course_id字段依賴example2表中的相應字段。
4、設置表的非空約束
設置表的的非空約束是指在創建表的時候為表中的某些特殊字段加上NOT NULL 約束條件,基本語法為:
屬性名 數據類型 NOT NULL
實例5:
[sql]
CREATE TABLE example4(id INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
stu_id INT,
CONSTRAINT d_fk FOREIGN KEY(stu_id)
REFERENCES example1(stu_id)
);
5、設置表的唯一性約束
唯一性是指所有記錄中該字段的值不能重復出現。設置表的唯一行約束是指在創建表的時候,為表的某些特殊字段加上UNIQUE約束條件。基本語法為:
屬性名 數據類型 UNIQUE
實例6:
[sql]
CREATE TABLE example5(id INT PRIMARY KEY,
stu_id INT UNIQUE,
name VARCHAR(20) NOT NULL
);
6、設置表的的屬性值自動增加
AUTO_INCREMENT是My中一個特殊的約束條件。其主要用于為表中插入的新記錄自動生成唯一的ID。一個表只能只能有一個字段使用AUTO_INCREMENT約束,且該字段必須為主鍵的一部分。默認情況下,該字段的值是從1開始自增。基本語法為:
屬性名 數據類型 AUTO_INCREMENT
實例7:
[sql]
CREATE TABLE example6(id INT PRIMARY KEY AUTO_INCREMENT,
stu_id INT UNIQUE,
name VARCHAR(20) NOT NULL
);
7、設置表的屬性的默認值
默認值是通過DEFAULT關鍵字來設置的。基本語法為:
屬性名 數據類型 DEFAULT 默認值
實例8:
[sql]
CREATE TABLE example7(id INT PRIMARY KEY AUTO_INCREMENT,
stu_id INT UNIQUE,
name VARCHAR(20) NOT NULL ,
English VARCHAR(20) DEFAULT 'zero',
Math FLOAT DEFAULT 0,
Computer FLOAT DEFAULT 0
);
以上就是Mysql中怎么創建數據表,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。