mysql 建表 设置联合主键
时间: 2023-11-20 18:57:48 浏览: 44
在MySQL中,可以通过在CREATE TABLE语句中使用PRIMARY KEY关键字来设置主键。要设置联合主键,可以在PRIMARY KEY后面列出多个字段名,用逗号隔开。下面是一个示例:
```sql
CREATE TABLE mytable (
id INT NOT NULL,
name VARCHAR(20) NOT NULL,
age INT,
PRIMARY KEY (id, name)
);
```
在上面的示例中,我们创建了一个名为mytable的表,其中id和name两个字段一起构成了联合主键。这意味着id和name的组合必须是唯一的,不能重复。
相关问题
mysql建表语句设置主键
在 MySQL 中,可以使用以下语句来创建一个带有主键的表:
```
CREATE TABLE table_name (
column1 datatype PRIMARY KEY,
column2 datatype,
column3 datatype,
...
);
```
其中,`column1` 是主键列,`PRIMARY KEY` 关键字用于指定该列为主键。
如果需要使用多个列作为主键,可以使用以下语句:
```
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
...
PRIMARY KEY (column1, column2)
);
```
其中,`PRIMARY KEY` 关键字后面跟着括号,括号中包含需要作为主键的列名。
mysql建表语句如何设置联合主键
可以通过在CREATE TABLE语句中使用多个字段名来设置联合主键。具体语法格式为“PRIMARY KEY (字段1, 字段2, ...)”或“CONSTRAINT 约束名 PRIMARY KEY (字段1, 字段2, ...)”。下面是一个示例:
```mysql
CREATE TABLE tb_emp5 (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
deptId INT NOT NULL,
PRIMARY KEY (name, deptId)
);
```
上述示例中,tb_emp5表中的联合主键由name和deptId两个字段组成。其中,name和deptId字段都是NOT NULL的,因此它们的值不能为空。同时,id字段被设置为主键,但是它是自增的,因此不需要手动指定值。