mysql建表主键自增语句
时间: 2023-11-11 08:50:01 浏览: 54
在MySQL中,创建表时可以通过AUTO_INCREMENT关键字为主键字段设置自增属性。具体语法如下:
CREATE TABLE 表名 (
列名 数据类型 AUTO_INCREMENT,
...
PRIMARY KEY (主键列名)
);
在你提供的例子中,创建表tb_student3时通过id字段设置了自增主键,语句为:
CREATE TABLE tb_student3 (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20) UNIQUE KEY,
age INT DEFAULT NULL
);
该语句将创建一个名为tb_student3的表,其中id字段为自增主键,name字段为唯一索引,age字段为可为空。执行结果为"Query OK, 0 rows affected (0.04 sec)",表示创建表成功。
相关问题
mysql主键 自增
在MySQL中,可以通过设置主键自增来实现自动生成唯一标识的功能。下面是两种设置MySQL主键自增的方法:
1. 在建表时设置主键自增:
```sql
create table tmp1 (
id int primary key auto_increment,
name varchar(32),
sex varchar(4) default '男'
) default charset=utf8;
```
在上述示例中,通过将id字段设置为主键并添加auto_increment属性,可以实现id字段的自增功能。
2. 在已有数据表中设置主键自增:
```sql
alter table tmp1 auto_increment=x;
```
在上述示例中,通过alter table语句将已有数据表tmp1的自增起始值设置为x。
需要注意的是,设置主键自增的前提是该字段必须为整型,并且是主键或唯一索引。
MySQL建表语句主键外键
当创建表时,可以使用以下语法来定义主键和外键:
1. 主键(Primary Key):
主键用于唯一标识表中的每一行数据。在MySQL中,主键可以是一个或多个列的组合。在创建表时,可以使用 `PRIMARY KEY` 关键字来定义主键。
例如,创建一个名为 `users` 的表,其中包含一个自增的主键 `id` 和一个名为 `username` 的列作为示例:
```sql
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50)
);
```
2. 外键(Foreign Key):
外键用于建立表与表之间的关系。在MySQL中,外键指向另一个表中的主键。在创建表时,可以使用 `FOREIGN KEY` 关键字来定义外键。
例如,创建一个名为 `orders` 的表,其中包含一个外键 `user_id` 引用了 `users` 表中的主键 `id`:
```sql
CREATE TABLE orders (
order_id INT PRIMARY KEY,
order_name VARCHAR(50),
user_id INT,
FOREIGN KEY (user_id) REFERENCES users(id)
);
```
需要注意的是,要使用外键约束,表的存储引擎必须是 InnoDB。同时,在定义外键时,还可以指定其他的操作,如级联更新(CASCADE)和级联删除(CASCADE)等。
以上是MySQL中定义主键和外键的语法示例,可以根据具体的需求进行调整和扩展。