MySQL 是目前最為流行的關系型數據庫之一,建表是進行數據存儲的重要步驟,下面是一些建表時需要注意的規則:
CREATE TABLE [table_name] ( column_1 data_type(size) PRIMARY KEY, column_2 data_type(size) NOT NULL, ... );
一、表名:
表名應該使用小寫字母,不要使用特殊符號和關鍵字作為表名,也不要使用 MySQL 的保留字作為表名。
CREATE TABLE employee; // 正確 CREATE TABLE `Employee`; // 可以使用反引號將表名轉義 CREATE TABLE 123employee; // 錯誤:表名不能以數字開頭 CREATE TABLE select; // 錯誤:表名不能使用 MySQL 的保留字
二、字段名:
字段名應該使用小寫字母,不要使用特殊符號和關鍵字作為字段名,也不要使用 MySQL 的保留字作為字段名。
CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, `class` VARCHAR(50) NOT NULL // 可以使用反引號將字段名轉義 );
三、數據類型和大小:
在建表過程中需要確定每個字段的數據類型和大小,數據類型包括整型、浮點型、字符型等多種類型,常用的數據類型如下:
INT、BIGINT、FLOAT、DOUBLE、DECIMAL、CHAR、VARCHAR、TEXT、DATE、DATETIME
在選擇數據類型的時候需要根據實際情況來決定,比如要存儲的數據范圍、是否需要進行計算等。
四、主鍵:
每張表都應該定義一個主鍵,主鍵可以是一個或多個字段組成的復合主鍵,主鍵的目的是保證數據的唯一性。
CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, class VARCHAR(50) NOT NULL );
五、NULL 和 NOT NULL:
字段可以定義為允許 NULL 值或 NOT NULL 值,如果不指定,默認為允許 NULL 值。
CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, salary FLOAT NOT NULL );
六、AUTO_INCREMENT:
自增長是指在插入新數據的時候,自動將該字段的值遞增,適用于主鍵或唯一鍵,可以避免自己手動輸入。
CREATE TABLE employee ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, salary FLOAT NOT NULL );
七、唯一鍵:
唯一鍵是可以唯一標識每一條數據的字段,可以用來避免數據的重復插入,一個表可以有多個唯一鍵。
CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(50) UNIQUE // email 為唯一鍵 );
以上是建表的一些基本規則和注意事項,希望對大家有所幫助。