发布网友 发布时间:2022-05-05 00:21
共3个回答
懂视网 时间:2022-05-05 04:43
mysql检查约束有什么用?下面本篇文章就来给大家介绍一下mysql检查约束的作用,希望对你们有所帮助。在MySQL中,提供了CHECK检查约束用来指定某列的可取值的范围,它通过限制输入到列中的值来强制域的完整性。但是目前的MySQL版本只是对CHECK约束进行了分析处理,但会被直接忽略,并不会报错。
MySQL 检查约束(CHECK)可以通过 CREATE TABLE 或 ALTER TABLE 语句实现,根据用户实际的完整性要求来定义。它可以分别对列或表实施 CHECK 约束。
在创建表时设置检查约束
基本语法:
CHECK(<检查约束>)
示例:在 test_db 数据库中创建 tb_emp7 数据表,要求 salary 字段值大于 0 且小于 10000
mysql> CREATE TABLE tb_emp7 -> ( -> id INT(11) PRIMARY KEY, -> name VARCHAR(25), -> deptId INT(11), -> salary FLOAT, -> CHECK(salary>0 AND salary<100), -> FOREIGN KEY(deptId) REFERENCES tb_dept1(id) -> ); Query OK, 0 rows affected (0.37 sec)
在修改表时添加检查约束
基本语法:
ALTER TABLE tb_emp7 ADD CONSTRAINT <检查约束名> CHECK(<检查约束>)
示例:修改 tb_dept 数据表,要求 id 字段值大于 0
mysql> ALTER TABLE tb_emp7 -> ADD CONSTRAINT check_id -> CHECK(id>0); Query OK, 0 rows affected (0.19 sec) Records: 0 Duplicates: 0 Warnings: 0
删除检查约束
基本语法:
ALTER TABLE <数据表名> DROP CONSTRAINT <检查约束名>;
热心网友 时间:2022-05-05 01:51
数据表上面的检查约束吧, 是用来控制表里面数据的完整性的, 比如一个数据表中A字段取值只能是0, 1, 2, 那么你就可以建立一个约束, 控制A字段只能是这三个值, 当有人想写入一条A=3的记录时, 数据库检查通不过就会提示错误. 这样就避免了错误数据进入数据库热心网友 时间:2022-05-05 03:09
相当于过滤条件,把你想要得查询出来