创建单列主键
单列主键是指主键约束只作用于一个列。创建单列主键有两种方式:
- 在定义字段的同时指定主键:
CREATE TABLE table_name (
id INT PRIMARY KEY,
column1 VARCHAR(50),
column2 INT
);
在这个例子中,id
列被指定为主键列。
- 在定义字段之后再指定主键:
CREATE TABLE table_name (
id INT,
column1 VARCHAR(50),
column2 INT,
PRIMARY KEY (id)
);
这种方式也是将id
列指定为主键列,但主键约束的声明放在了字段定义之后。
创建联合主键
联合主键是指主键约束作用于多个列的组合。创建联合主键的语法如下:
CREATE TABLE table_name (
column1 INT,
column2 INT,
-- 其他字段定义
PRIMARY KEY (column1, column2)
);
在这个例子中,column1
和column2
两列被组合为复合主键。需要注意的是,一张表只能有一个主键,无论是单列主键还是联合主键。
在表创建后添加主键
如果表已经创建但还没有主键,可以通过ALTER TABLE
语句来添加主键。语法如下:
ALTER TABLE table_name ADD PRIMARY KEY (column_list);
其中,column_list
是主键约束要作用的列名列表。如果是联合主键,则列出所有要组合的列名。