如何查询网站备案,三类人员 网站开发,wordpress插件百度,室内设计平面图手绘目录
约束
一 主键约束
1-1 操作-添加单列主键 1-2 操作-添加多列主键 1-3 修改表结构添加主键
1-4 删除主键约束
二 自增长约束
2-1 指定自增长字段的初始值
2-2 删除自增列
三 非空约束 3-1 创建非空约束
3-2 删除非空约束
四 唯一约束… 目录
约束
一 主键约束
1-1 操作-添加单列主键 1-2 操作-添加多列主键 1-3 修改表结构添加主键
1-4 删除主键约束
二 自增长约束
2-1 指定自增长字段的初始值
2-2 删除自增列
三 非空约束 3-1 创建非空约束
3-2 删除非空约束
四 唯一约束 4-1 创建唯一约束
4-2 删除唯一约束
五 默认约束
5-1 创建默认约束
5-2 删除默认约束
六 零填充约束
6-1 创建零填充约束
6-2 删除零填充约束 约束
▶ 概念 约束英文constraint 约束实际上就是表中数据的限制条件 ▶ 作用 表在设计的时候加入约束的目的就是为了保证表中的记录完整性和有效性比如用户表有些列的值手机号)不能为空有些列的值(身份证号)不能重复。 ▶ 分类 主键约束(primary key) PK 自增长约束(auto_increment) 非空约束(not null) 唯一性约束(unique) 默认约束(default) 零填充约束(zerofill) 外键约束(foreign key) FK 一 主键约束
▶ 概念 ▻ MySQL主键约束是一个列或者多个列的组合,其值能唯一地标识表中的每一行,方便在RDBMS中尽快的找到某一行。 ▻ 主键约束相当于唯一约束非空约束的组合主键约束列不允许重复也不允许出现空值。 ▻ 每个表最多只允许一个主键 ▻ 主键约束的关键字是:primary key ▻ 当创建主键的约束时系统默认会在所在的列和列组合上建立对应的唯一索引。 ▶ 操作 1.添加单列主键 2.添加多列联合主键 3.删除主键 1-1 操作-添加单列主键
创建单列主键约束的语法 ▶ 方式一 在create table 语句中通过 PRIMARY KEY 关键字来指定主键 在定义字段的同时指定主键语法格式如下 create table 表名( .... 字段名数据类型 primary key .... ) ▶ 方式二 在定义字段之后再指定主键语法格式如下 create table 表名( ... [constraint 约束名 ] primary key [字段名] ) 操作演示 演示效果 1-2 操作-添加多列主键 所谓的联合主键就是这个主键是由一张表中多个字段组成的。 注意: 1.当主键是由多个字段组成时不能直接在字段名后面声明主键约束。 2.一张表只能有一个主键联合主键也是一个主键 创建多列主键的语法 create table 表名( ... primary key (字段1,字段2,字段3,...,字段n ) ); 多列主键中的字段值至少要有一个不同且联合主键的各列都不能为空(NULL) 效果展示 1-3 修改表结构添加主键 主键约束不仅可以在创建表的同时创建也可以在修改表时添加。 通过修改表结构既可以设置为单列主键也可以设置为多列主键。 修改表结构添加主键语法 create table 表名( ... ); alter table 表名 add primary key (字段列表) 运行效果 1-4 删除主键约束 一个表中不需要主键约束时就需要从表中将其删除。删除主键约束的方法要比创建主键约束的方法容易的多。 删除主键约束的语法 alter table 数据表名 drop primary key; 效果演示
【总结】 二 自增长约束
▶ 概念 ▻ 在MysQL中当主键定义为自增长后这个主键的值就不再需要用户输入数据了而由数据库系统根据定义自动赋值。每增加一条记录主键会自动以相同的步长进行增长。 ▻ 通过给字段添加auto_increment属性来实现主键自增长 ▶ 语法 字段名 数据类型 auto_increment ▶ 操作 create table 表名( id int primary key auto_increment, naem varchar(20) ); ▶ 特点 ▻ 默认情况下auto_increment的初始值是1每新增一条记录字段值自动加1。 ▻ 一个表中只能有一个字段使用auto_increment约束且该字段必须有唯一索引以避免序号重复(即为主键或主键的一部分)。 ▻ auto increment约束的字段必须具备NOT NULL属性。▻ auto_increment约束的字段只能是整数类型(TINYINT、SMALLINT、INT、BIGINT等。▻ auto_increment约束字段的最大值受该字段的数据类型约束如果达到限,auto_increment就会失效。 2-1 指定自增长字段的初始值 如果第一条记录设置了该字段的初始值那么新增加的记录就从这个初始值开始自增。例如 如果表中插入的第一条记录的id值设置为5那么再插入记录时id值就会从5开始往上增加。
语法 ▶ 方式一创建表后指定 create table t_user1( id int primary key auto_increment, ... ); alter table t_user1 auto_increment100; ▶ 方式二创建表时指定 create table t_user3( id int primary key auto_increment, ... ) auto_increment200; 效果演示 2-2 删除自增列 使用delete 和 truncate可以删除自增列 注意delete和truncate在删除后自增列的变化 ▶ delete数据之后自动增长从断点开始。比如你表以前的数据是从100开始你插入到 了105,然后你全部删除再重新插入新数据,它的自增长值是106). ▶ truncate数据之后自动增长从默认起始值开始.(比如你表以前的数据是从100开始你插入到了105,然后你全部删除再重新插入新数据,它的自增长值是1默认从1开始). delete的效果
truncate的效果 【总结】 三 非空约束 ▶ 概念 MySQL非空约束(not null指字段的值不能为空。对于使用了非空约束的字段如果用户在添加数据时没有指定值数据库系统就会报错。 3-1 创建非空约束
▶ 语法 ▶ 方式一创建表时指定 字段名数据类型 not null; ▶ 方式二创建表后修改 alter table 表名 modify 字段 类型 not null; 演示效果 3-2 删除非空约束
▶ 语法 alter table 表名 modify 字段 类型 就是将创建时的语句去掉not null 演示效果 【总结】 四 唯一约束 ▶ 概念 唯一约束(Unique Key)是指所有记录中字段的值不能重复出现例如为id字段加上唯一性约束后每条记录的id值都是唯一的不能出现重复的情况。 4-1 创建唯一约束
▶ 语法 ▶ 方式一创建表时指定 字段名数据类型 unique ▶ 方式二创建表后修改 alter table 表名 add constraint 约束名 unique(列名) 演示效果 4-2 删除唯一约束
▶ 语法 alter table 表名 drop index 唯一约束名; 创建表后修改表时有约束名可以直接使用设置的约束名。 创建表时设置约束没有约束名直接使用被约束的列名即可。 效果演示 【总结】 五 默认约束 ▶ 概念 MySQL默认值约束用来指定某列的默认值。 5-1 创建默认约束 ▶ 语法 ▶ 方式一创建表时指定 字段名数据类型 default 默认值; ▶ 方式二创建表后修改 alter table 表名 modify 列名 类型 default 默认值; 演示效果 5-2 删除默认约束 ▶ 语法 alter table 表名 modify change column 字段名 类型 default nll; 效果演示 【总结】 六 零填充约束 ▶ 概念 1、插入数据时当该字段的值的长度小于定义的长度时会在该值的前面补上相应的O 2、zerofill默认为int(10) 3、当使用zerofill时:默认会自动加unsigned无符号属性使用unsigned属性后数值范围是原值的2倍例如,有符号为-128~127无符号为0~256。 6-1 创建零填充约束 ▶ 语法 字段名数据类型 zerofill create table t_user12( id int zerofill, -- 零填充约束 name varchar(20) ); 效果演示 6-2 删除零填充约束 ▶ 语法 alter table 表名 modify 字段名 类型 ; 演示效果 【总结】