創(chuàng)建表
- 語句
CREATE TABLE 語句用于創(chuàng)建數(shù)據(jù)庫中的表。 - 語法
CREATE TABLE 表名稱
(
列名稱1 數(shù)據(jù)類型,
列名稱2 數(shù)據(jù)類型,
列名稱3 數(shù)據(jù)類型,
....
)
- 實(shí)例
CREATE TABLE tt (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(10),
age INT DEFAULT 0
);
- 約束
約束用于限制加入表的數(shù)據(jù)的類型椭懊。
可以在創(chuàng)建表時規(guī)定約束(通過 CREATE TABLE 語句)诸蚕,或者在表創(chuàng)建之后也可以(通過 ALTER TABLE 語句)冠场。
我們將主要探討以下幾種約束:
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY
CHECK
-
DEFAULT
- SQL NOT NULL 約束
NOT NULL 約束強(qiáng)制列不接受 NULL 值译荞。
NOT NULL 約束強(qiáng)制字段始終包含值。這意味著绍妨,如果不向字段添加值盅抚,就無法插入新記錄或者更新記錄漠魏。下面的 SQL 語句強(qiáng)制 "Id_P" 列和 "LastName" 列不接受 NULL 值:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
2. SQL UNIQUE 約束
UNIQUE 約束唯一標(biāo)識數(shù)據(jù)庫表中的每條記錄。
UNIQUE 和 PRIMARY KEY 約束均為列或列集合提供了唯一性的保證妄均。
PRIMARY KEY 擁有自動定義的 UNIQUE 約束蛉幸。
請注意,每個表可以有多個 UNIQUE 約束丛晦,但是每個表只能有一個 PRIMARY KEY 約束奕纫。
下面的 SQL 在 "Persons" 表創(chuàng)建時在 "Id_P" 列創(chuàng)建 UNIQUE 約束:
```
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (Id_P)
)