mysql 表基本操作(创建表、添加主键、外键、非空约束、唯一性约束、默认约束、自动增加)

您所在的位置:网站首页 数据库删除表的主键语句 mysql 表基本操作(创建表、添加主键、外键、非空约束、唯一性约束、默认约束、自动增加)

mysql 表基本操作(创建表、添加主键、外键、非空约束、唯一性约束、默认约束、自动增加)

2024-07-13 10:58| 来源: 网络整理| 查看: 265

1、单字段主键:

create table tb_emp ( id int(11) primary key, name varchar(25), depId int(11), salary float );

primary key 指定该列为主键;

定义完所有列之后指定主键:

create table tb_emp ( id int(11), name varchar(25), deptId int(11), salary float, primary key(id) );

2、使用外键约束

语法:

constraint foreign key 字段名1 ,字段名2,... references 主键列1,主键列2,... create table tb_dept1 ( id int(11) primary key, name varchar(22) not null, location varchar(50) ); create table tb_emp ( id int(11) primary key, name varchar(25), deptId int(11), salary float, constraint fk_emp_dept1 foreign key(deptId) references tb_dept1(id) );

以上语句执行之后,在表tb_emp上添加了名称为fk_emp_dept1的外键约束,外键名称为deptId,其依赖于表tb_dept1的主键id。

3、非空约束

语法:

字段名 数据类型 not null create table tb_emp ( id int(11) primary key, name varchar(25) not null, deptId int(11), salary float );

执行之后,在tb_emp中创建了一个name字段,其插入值不能为空(not null)。

4、唯一性约束

语法:

create table tb_dept ( id int(11) primary key, name varchar(22) unique, location varchar(50) ); 字段名 数据类型 unique

也可以在定义完所有列之后指定唯一约束,语法如下:

constraint unique () create table tb_dept ( id int(11) primary key, name varchar(22), location varchar(50), constraint sth unique(name) );

unique和primary key的区别:一个表中可以有多个字段声明为unique,但只能有一个primary key声明;声明为primary key 的列不允许有空值,但是声明为unique的字段允许空值(null)的存在。

5、使用默认约束

语法:

字段名 数据类型 default 默认值 create table tb_emp ( id int(11) primary key, name varchar(25) not null, deptId int(11) default 111, salary float );以上语句执行之后,表tb_emp上的字段deptId拥有了一个默认值111,新插入的记录如果没有指定部门编号,则默认都为111。

6、设置表的属性值自动增加

语法:

字段名 数据类型 auto_increment create table tb_emp ( id int(11) primary key auto_increment, name varchar(25) not null, deptId int(11), salary float );在mysql中,auto_increment的初始值是1,每新增一条记录,字段值自动加1。一个表只能有一个字段使用auto_increment约束,且该字段必须为主键的一部分。auto_increment约束的字段可以是任何整数类型(tinyint、smallin、int、bigint等)。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3