IT评测·应用市场-qidao123.com

标题: MySQL -- 束缚 [打印本页]

作者: 飞不高    时间: 2025-1-22 00:20
标题: MySQL -- 束缚
1. 数据库束缚

数据库束缚时关系型数据库的一个告急功能,重要的作用是保证数据的有效性,也可以明白为数据的精确性(数据本身是否精确,关联关系是否精确) **人工查抄数据的完整性工作量非常大,在数据库中定义一些束缚,那么数据在写入数据库的时间,就会帮我们做一些校验.**并且束缚一般是在指定列上创建的.
2. 束缚范例

范例
阐明
NOTNULL空束缚 (常用
指定空束缚的列不能存储NULL值
DEFALUT默认束缚(常用
当没有给列赋值时使的默认值
UNIQUE唯束缚(常用
指定唯束缚的列每数据必须有唯的值
PRIMARYKEY主键束缚(常用
NOTNULL和UNIQUE的结合,可以指定个列或多个列,有助于防数据重复和提数据的查询性能
FOREIGNKEY外键束缚(现在不用)
外键束缚是种关系束缚,于定义两个表之间的关联关系,可以确保数据的完整性和致性
CHECK束缚 (不用)
于限制列或数据在数据库表中的值,确保数据的精确性和可靠性
3. NOTNULL空束缚

定义表时某列不允许为NULL时,可以为列添加空束缚。










4. DEFALUT默认值束缚

   DEFAULT束缚于向列中插默认值,如果没有为列设置值,那么会将默认值设置到该列.
  
示例:







5. UNIQUE唯束缚

   指定了唯束缚的列,该列的值在全部记录中不能重复,如个的份证号,学的学号等
  


6. PRIMARYKEY主键束缚

主键束缚唯标识数据库表中的每条记录。
主键必须包罗唯的值,且不能包罗NULL值。
每个表只能有个主键,可以由单个列或多个列组成。
通常为每张表都指定个主键,主键列建议使BIGINT范例

上图中我们插错了一条数据,那我们的自增主键id会走到什么位置?2还是3 接着我们检察一下,此时发现id是从3开始的,这是为何?由于在数据库中插入数据精确或错误,自增主键都会向下走一步,不会回退,如许可以提高查询效率。


1.插入

2.更新
可以使以上语法,如果插时有冲突则更新当前列的值, 两受影响,表删除了原来的记录,新写了条记录其与update student set name ='钱六',number='100011' where id=100;等效

3.替换
如果表中没有冲突则直接插入新数据,和insert的功能是一样的。



7. FOREIGNKEY外键束缚

外键于定义主表和从表之间的关系
外键束缚主定义在从表的列上,主表关联的列必须是主键或唯束缚
当定义外键后,要求从表中的外键列数据必须在主表的主键或唯列存在或为null。
7.1 语法

  1. foreign key (id) references class(id)
复制代码




8. CHECK束缚

可以应于个或多个列,于限制列中可接受的数据值,从确保数据的完整性和精确性。
在8.0.16开始全持CHECK束缚,之前的版本会忽略CHECK的定义
但是注意,一般在应用步伐级别校验


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4