首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL数据库——约束(非空约束唯一约束、主键约束约束)

目录 1 约束 约束,是对表中数据进行限定,保证数据正确性、有效性和完整性,约束分为以下几类: 主键约束:primary key 非空约束:not null 唯一约束:unique 约束:foreign...UNIQUE ); 注意:MySQL中唯一约束限定值可以有多个null 2)删除唯一约束: -- alter table stu modify number varchar(20); 不同于非空约束删除方法...主键约束:primary key 1)注意: 若某一列添加了该约束,则代表了非空,且唯一; 一张只能有一个字段为主键; 主键就是中记录唯一标识; 2)创建时添加主键约束 CREATE TABLE...以上仍然存在一个问题,当在员工中输入不存部门时,数据依然可以添加,不符合实际,因此,这里就可以通过使用约束来解决。 【概念】什么是约束?...,就是从中与主表主键对应那一列,如:员工dep_id,其中,主表是一方,用来约束别人,从可以是多方,被别人约束。 注意:可以为NULL,但是不能是不存在键值。 ?

13.5K21
您找到你想要的搜索结果了吗?
是的
没有找到

django模型中有关系删除相关设置

0904自我总结 django模型中有关系删除相关设置 一.一对一 例如有Author、AuthorDetail两 author = models.OneToOneField(to='Author...:作者删除详情删除,详情删除作者保留 2)作者找详情用 related_name(detail),详情找作者用 字段(author) 3)db_constraint断开关联,on_delete...(多一方):出版社删除不动,书删除没有任何影响 2)出版社找书用 related_name(books),书找出版社 字段(publish) 3)db_constraint断开关联...两者区别 models.SET关联内容删了,关联相关内容不会删除 models.CASCAD关联内容删了,关联相关内容会删除 db_constraint关系断开后,但是不影响联查询 四.多对多关系...', db_constraint=False, ) 1)关系字段放在任意一方都可以:出版社删除或书删除彼此不影响,但关系一定级联删除 2)正向找 字段,反向找 字段related_name

3K20

【说站】mysql约束作用

mysql约束作用 1、约束是保证一个或两个之间参考完整性,是构建在一个两个字段或两个两个字段之间参考关系。 2、通过约束,确保表格之间数据完整性和准确性。...实例 -- 约束操作 -- 关键字 foreighn key -- 概述:就是让两个以及多个之间建立联系 -- 创建时加入 CREATE TABLE tab( id int PRIMARY...    (t_id) -- 列名 REFERENCES     tab1(id) -- 主表(列名) ); -- 第二张连接 CREATE TABLE tab1( id INT PRIMARY ...KEY , -- 主键id 也是连接tab age INT );   -- 删除约束 ALTER TABLE     tab -- 名 DROP FOREIGN KEY     tab_tab1...) -- 列名 REFERENCES tab1(id); -- 主表(列名) 以上就是mysql约束作用,希望对大家有所帮助。

4.5K20

laravel5.6中约束示例

场景 如果现在有两张,一张是文章articles,一张是分类categories,其中在文章中有一个分类字段category_id,现在想在删除分类某一分类时,该分类下所有文章也一起被删除...,那么这时候就可以用到外约束 具体用法如下: 给文章添加约束 $table- unsignedInteger('category_id')- comment('文章所属分类|select');...$table- foreign('category_id')- references('id')- on('categories')- onDelete('cascade'); 其中需要注意是分类categories...中主键字段id与文章articles中字段category_id数据类型或者是数据长度要保持一致,因为作为主键id值是从1开始自增,所以在被其绑定字段数据类型就不能使用integer...,而要改用unsignedInteger 以上这篇laravel5.6中约束示例就是小编分享给大家全部内容了,希望能给大家一个参考。

1.7K31

【MySql】连接连接

本篇博客主要介绍内容是连接,在MySql中表连接分为内连接连接,下面,我们直接进入主题把 内连接连接实际上就是利用where子句对两种表形成笛卡儿积进行筛选,我们前面学习查询都是内连接...本质是差不多 连接 连接分为左连接和右连接连接 如果联合查询,左侧完全显示我们就说是左连接 -- 语法 select 字段名 from 名1 left join 名2 on...-- 当左边和右边没有匹配时,也会显示左边数据 select * from stu left join exam on stu.id=exam.id; 这就是左连接,看完了左连接,我们更加容易理解右连接了...右连接 如果联合查询,右侧完全显示我们就说是右连接。...-- 语法 select 字段 from 名1 right join 名2 on 连接条件; 下面,我们还是通过案例来对右连接进行实际运用,加强理解: 对stu和exam联合查询,把所有的成绩都显示出来

21750

django在开发中取消约束实现

删除关系 反查: 在关系里 related_name = ‘反查name’,自己不设置,django也会默认设置为class小写名字+_set , ex: book_set....(数据库字段名字room_number_id)值,将相对应值直接赋值给该字段      class_number = ClassNumber.object.get("id=1").room_number...假设两张:Book书 + Reply评论 。为多对一,Reply为”多”....s.save() return HttpResponse("ojbk") 删除关系数据 先查出对应关系数据,在删除 class ModelStudy(View): ''' Students...s.teacher.remove(x) return HttpResponse("ojbk") 以上这篇django实现在开发中取消约束就是小编分享给大家全部内容了,希望能给大家一个参考。

3.6K10

MySQL学习之路:数据完整性-约束

PRIMARY KEY 又称为主键约束,定义中构成主键一列或多列。 主键用于唯一标识每条记录,作为主键字段值不能为NULL且必须唯一,可以是单一字段,也可以是多个字段组合。...UNIQUE约束又称唯一约束,是指数据中一列或一组列中只包含唯一值。...约束实现了引用完整性,当主表中被引用列值发生变化时,为了保证间数据一致性,从中与该值相关信息也应该相应更新,这就是约束级联更新和删除。...SET NULL:更新和删除操作表记录时,从中相关记录对应值设置为NULL。 NO ACTION:不进行任何操作 RESTRICT:拒绝主表更新或修改关联列。...删除约束 使用DROP TABLE语句删除时,中所有的约束也随之被删除。 使用ALTER TABLE可以删除指定约束。 ALTER TABLE 名 DROP 约束类型 [约束名];

19620

mysql如何添加一个

1:创建一个父,主键作为子表: 1 create table province( 2 pId int primary key auto_increment, 3 pName varchar...(20) 4 ); 2:创建子表,是父主键: 1 create table user( 2 userId int primary key auto_increment, 3 userName varchar...(40), 4 pid int, 5 foreign key(pid) references province(pId) 6 ); 给一张添加,即给子表添加主键规则: 在子表声明一个字段pid...int,用于作为子表,foreign key(子表字段) references 父名(父主键字段名); 3:当创建好数据时添加约束: alter table user add...foreign key(pid) references province(pId); alter table 子表数据名 add foreign key(子表键名称) references 父数据名称

4.3K70

MySQL实战七:你不知道约束使用!

如果你创建时候加上了check约束也是不起作用。所以,你不用更改或删除之前check约束。...,用来设置当主键被参考列数据发生变化时,中响应字段变换规则。...学习 cascade 表示级联操作,就是说,如果主键中被参考字段更新,(子表)中也更新,主键(父)中记录被删除(子表)中改行也相应删除。...,删除主键数据会将子表联同删除删除子表数据不影响父。...而on update只能删除子表数据,不能删除主键数据,只能更新父主键,同时父子表数据都会被更新,但是在子表上做更新操作无效。

4.3K20

轻松学习SQL约束核心原理和实用技巧

SQL 约束-约束简介约束(FOREIGN KEY,缩写 FK)是用来实现数据库参照完整性。...它是指中某个字段值依赖于另一张中某个字段值,而被依赖字段必须且有主键约束或者唯一约束。被依赖通常称之为父或者主表,设置约束称为子表或从。...相关概念主键:可以唯一标识一条记录:从中与主表主键对应字段主表:所指向,约束其他所在,被约束价值:建立主表与从关联关系,为两个数据建立连接约束两个中数据一致性和完整性建立约束创建时添加约束...KEY [约束名称]注意事项从数据类型必须与主表主键一致删除数据时,需先删除数据再删除主表数据添加数据时先添加主表数据,再添加从数据#删除约束ALTERTABLEemp_partDROPFOREIGNKEYemp_dept...当在子表中插入或更新数据时,约束确保所提供键值必须在父相应主键或唯一键值范围内。如果父中不存在相应值,则操作将失败,从而确保了数据完整性和一致性。

17110
领券