在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 <搜检束缚名>;
以上就是mysql搜检束缚有什么用的细致内容,更多请关注ki4网别的相干文章!