企业网站优化要多少钱,wordpress 免费版,app与网站开发的区别,杭州手机模板建站MySQL约束 create table [if not exists] 表名(字段名1 类型[(宽度)] [约束条件] [comment 字段说明],字段名2 类型[(宽度)] [约束条件] [comment 字段说明],字段名3 类型[(宽度)] [约束条件] [comment 字段说明]
)[表的一些设置]; 概念 约束英文#xff1a;constraint 约束实…MySQL约束 create table [if not exists] 表名(字段名1 类型[(宽度)] [约束条件] [comment 字段说明],字段名2 类型[(宽度)] [约束条件] [comment 字段说明],字段名3 类型[(宽度)] [约束条件] [comment 字段说明]
)[表的一些设置]; 概念 约束英文constraint 约束实际上就是表中数据的限制条件 作用 表再设计的时候加入约束的目的就是为了保证表中的记录完整性和有效性比如用户表有些列的值手机号不能为空有些列的值身份证号不能重复。 分类 主键约束primary key PK 自增长约束auto_ increment 非空约束not_null 唯一性约束unique 默认约束default 零填充约束zerofill 外键约束foreign key FK
主键约束 概念 MySQL主键约束是一个列或者多个列的组合其值能唯一地标识表中的每一行方便再RDBMS中尽快的找到某一行。 主键约束相当于唯一约束非空约束的组合主键约束列不允许重复也不允许出现空值。 每个表最多只允许一个主键 主键约束的关键字是primary key 当创建主键的约束时系统默认会在所在的列和列组合上建立对应的唯一索引。 操作 添加单列主键 添加多列联合主键 删除主键
①添加单列主键
创建单列主键有两种方式一种是在定义字段的同时指定主键一种是定义完字段之后指定主键
方式1-语法 在 create table 语句中,通过 primary key 关键字来指定主键。
在定义字段的同时指定主键语法格式如下
create table 表名(
...
字段名数据类型 primary key
...
) 方式1-实现 在定义字段之后再指定主键语法格式如下
create table 表名(
...
[constraint约束名] primary key[字段名]
)数据修改
格式
create table if not exists emp(sid int primary key,sname varchar(20),deptid int,salary double
); 方式2-实现 create table emp2(
eid INT,
name VARCHAR(20),
deptId INT,
salary double,
constraint pk1 primary key(id)
) 主键不能重复
insert into emp(sid, sname, deptid, salary) VALUES (1001,tom,1,122.34);
insert into emp(sid, sname, deptid, salary) VALUES (1002,jerry,1,122.34);
主键不能为空
insert into emp(sid, sname, deptid, salary) VALUES (null,tom,1,122.34); ②联合主键
所谓的联合主键就是这个主键是由一张表中多个字段中有多个字段组成的。
注意
1当主键是由多个字段组成时不能直接在字段名后面声明主键约束。
2一张表只能有一个主键联合主键也是一个主键
语法 create table 表名(
...
primary key(字段1,字段2,...,字段n)
) 实现 create table emp3(name varchar(20),deptId int,salary double,primary key(namedeptId)
)insert into emp3(name, deptId, salary) VALUES (tom,1,1200.12);
insert into emp3(name, deptId, salary) VALUES (tom,1,1200.12);
insert into emp3(name, deptId, salary) VALUES (jerry,1,1200.12);
insert into emp3(name, deptId, salary) VALUES (null,1,1200.12);③添加主键
主键约束不仅可以在创建表的同时创建也可以在修改表时添加。
语法 create table 表名(
...
);
alter table 表名 add primary key(字段列表); 实现 添加主列主键
create table emp5(eid int,name varchar(20),deptId int,salary double
);
alter table emp5 add primary key(name,deptId); ④删除主键
一个表中不需要主键约束时就需要从表中将其删除。删除主键约束的方法要比创建主键约束容易的多。
格式 alter table 数据表名 drop priamry key; 实现 删除单列主键
alter table emp1 drop primary key;
删除联合主键
alter table emp5 drop primary key; 自增长约束 概念
在MySQL中当主键定义为自增长后这个主键的值就不再需要用户输入数据了而由数据库系统根据定义自动赋值。每增加一条记录主键会自动以相同的步长进行增长。
通过给字段添加auto_increment属性来实现主键自增长 语法 字段名 数据类型 auto_increment 操作 create table t_user1(id int primary key auto_increment,name varchar(20)
); 非空约束 唯一约束 默认约束 零填充约束