凡科网站建设商城建站报价方案如何?

摘要:评论凡科网站建设怎么样,商城建站报价方案,北京建设大厦,平台网站怎么做的【MySQL】第十七部分 约束 文章目录【MySQL】第十七部分 约束17. 约束17.1 约束的分类17.2 非空约束17.3 唯一性约束17.4 主键约束17.5
评论凡科网站建设怎么样,商城建站报价方案,北京建设大厦,平台网站怎么做的【MySQL】第十七部分 约束 文章目录【MySQL】第十七部分 约束17. 约束17.1 约束的分类17.2 非空约束17.3 唯一性约束17.4 主键约束17.5 自增列约束17.6 外键约束17.7 默认约束17.8 check约束总结17. 约束 约束: 可以在创建表的时候规定约束,也可以在表创建之后添加,约束顾名思…【MySQL】第十七部分 约束 文章目录【MySQL】第十七部分 约束17. 约束17.1 约束的分类17.2 非空约束17.3 唯一性约束17.4 主键约束17.5 自增列约束17.6 外键约束17.7 默认约束17.8 check约束总结17. 约束 约束: 可以在创建表的时候规定约束,也可以在表创建之后添加,约束顾名思义就是限制条件 17.1 约束的分类 单列约束每个约束只约束一列 多列约束每个约束可约束多列数据 列级约束只能作用在一个列上跟在列的定义后面 表级约束可以作用在多个列上不与列一起而是单独定义 17.2 非空约束 添加非空约束 # 1. 在创建表的时候添加非空约束 CREATE TABLE test1(id INT NOT NUll,name VARCHAR(10) NOT NULL,salary DECIMAL(10,2) );# 2. 表创建后添加非空约束 ALTER TABLE test1 MODIFY salary DECIMAL(10,2) NOT NULL;删除非空约束 ALTER TABLE test1 MODIFY salary DECIMAL(10,2);17.3 唯一性约束 知识点: 同一个表可以有多个唯一约束唯一约束可以是某一个列的值唯一也可以多个列组合的值唯一唯一性约束允许列值为空在创建唯一约束的时候如果不给唯一约束命名就默认和列名相同MySQL会给唯一约束的列上默认创建一个唯一索引唯一约束可以使用表级约束的写法,上述的非空约束是不可以的 添加唯一约束 # 表级约束写法: create table 表名称(字段名 数据类型,[constraint 约束名] UNIQUE(字段名,字段名) );# 1. 在创建表的时候添加唯一约束 CREATE TABLE test2 (id INT UNIQUE, # (这种就是列级写法)name VARCHAR(10) );# 2. 在创建表的时候使用表级约束写法 CREATE TABLE test3 (id INT,name VARCHAR(10),CONSTRAINT id_uni UNIQUE(id) );CREATE TABLE test4 (id INT,name VARCHAR(10),# 将id和name组合约束,表示只有当id和name都重复才会报错,否则都符合条件CONSTRAINT id_name_uni UNIQUE(id,name) # 多列约束 );# 3.在建表后添加唯一约束 ALTER TABLE test4 ADD UNIQUE(name);# 4.在建表后添加唯一约束 ALTER TABLE test3 MODIFY name VARCHAR(10) UNIQUE;删除唯一约束 上述说过因为添加唯一性约束的列上也会自动创建唯一索引,所以删除唯一约束只能通过删除唯一索引 # 通过该命令可以查看指定表中有哪些约束 SELECT * FROM information_schema.table_constraints WHERE table_name 表名; # 也可以通过该命令查看表的索引 SHOW INDEX FROM 表名称;ALTER TABLE test3 DROP INDEX id_uni17.4 主键约束 主键约束相当于唯一约束和非空约束的组合主键约束列不允许重复也不允许出现空值, 注意: 一个表当中最多只能由一个主键约束,建立主键约束可以在在列级创建,也可以在表级创建主键约束可以对应一列或者多列(和上述唯一约束中说的多列约束一样)主键约束不需要去取约束名,MySQL的主键名总是PRIMARY创建主键约束时, 系统默认会在所在的列或列组合上建立对应的主键索引,如果删除主键约束了主键约束对应的索引就自动删除了。
阅读全文