目录 搜索
SQL 基础教程 SQL 语法 SQL SELECT 语句 SQL SELECT DISTINCT 语句 SQL WHERE 子句 SQL AND & OR 运算符 SQL ORDER BY 关键字 SQL INSERT INTO 语句 SQL UPDATE 语句 SQL DELETE 语句 SQL 函数 SQL Date 函数 SQL NULL 函数 SQL 函数 SQL AVG() 函数 SQL COUNT() 函数 SQL FIRST() 函数 SQL LAST() 函数 SQL MAX() 函数 SQL MIN() Function SQL SUM() Function SQL GROUP BY 语句 SQL HAVING 子句 SQL UCASE() 函数 SQL LCASE() 函数 SQL MID() 函数 SQL LEN() 函数 SQL ROUND() 函数 SQL NOW() 函数 SQL FORMAT() 函数 SQL 快速参考 SQL 主机 SQL 高级教程 SQL SELECT TOP 子句 SQL LIKE 操作符 SQL 通配符 SQL IN 操作符 SQL BETWEEN 操作符 SQL 别名(Aliases) SQL 连接(Joins) SQL INNER JOIN 关键字 SQL LEFT JOIN 关键字 SQL RIGHT JOIN 关键字 SQL FULL OUTER JOIN 关键字 SQL UNION 操作符 SQL SELECT INTO 语句 SQL INSERT INTO SELECT 语句 SQL CREATE DATABASE 语句 SQL CREATE TABLE 语句 SQL 约束(Constraints) SQL NOT NULL 约束 SQL UNIQUE 约束 SQL PRIMARY KEY 约束 SQL FOREIGN KEY 约束 SQL CHECK 约束 SQL DEFAULT 约束 SQL CREATE INDEX 语句 SQL 撤销索引、撤销表以及撤销数据库 SQL ALTER TABLE 语句 SQL AUTO INCREMENT 字段 SQL 视图(Views) MySQL NOW() 函数 MySQL CURDATE() 函数 MySQL CURTIME() 函数 MySQL DATE() 函数 MySQL EXTRACT() 函数 MySQL DATE ADD() 函数 MySQL DATE SUB() 函数 MySQL DATEDIFF() 函数 MySQL DATE FORMAT() 函数 SQL Server GETDATE() 函数 SQL Server DATEPART() 函数 SQL Server DATEADD() 函数 SQL Server DATEDIFF() 函数 SQL Server CONVERT() 函数 SQL NULL 值 SQL 通用数据类型 SQL 用于各种数据库的数据类型
文字

SQL PRIMARY KEY 约束



SQL PRIMARY KEY 约束

PRIMARY KEY 约束唯一标识数据库表中的每条记录。

主键必须包含唯一的值。

主键列不能包含 NULL 值。

每个表都应该有一个主键,并且每个表只能有一个主键。


CREATE TABLE 时的 SQL PRIMARY KEY 约束

下面的 SQL 在 "Persons" 表创建时在 "P_Id" 列上创建 PRIMARY KEY 约束:

MySQL:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

如需命名 PRIMARY KEY 约束,并定义多个列的 PRIMARY KEY 约束,请使用下面的 SQL 语法:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
)

注释:在上面的实例中,只有一个主键 PRIMARY KEY(pk_PersonID)。然而,pk_PersonID 的值是由两个列(P_Id 和 LastName)组成的。


ALTER TABLE 时的 SQL PRIMARY KEY 约束

当表已被创建时,如需在 "P_Id" 列创建 PRIMARY KEY 约束,请使用下面的 SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (P_Id)

如需命名 PRIMARY KEY 约束,并定义多个列的 PRIMARY KEY 约束,请使用下面的 SQL 语法:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)

注释:如果您使用 ALTER TABLE 语句添加主键,必须把主键列声明为不包含 NULL 值(在表首次创建时)。


撤销 PRIMARY KEY 约束

如需撤销 PRIMARY KEY 约束,请使用下面的 SQL:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID

上一篇: 下一篇: