mysql中的檢查約束的作用:用來指定某列的可取值的范圍。檢查約束可以通過CREATE TABLE或ALTER TABLE語句來實現,根據用戶實際的完整性要求來定義。
在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?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?;
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END