mysql中的檢查約束有什么用

mysql中的檢查約束的作用:用來指定某列的可取值的范圍。檢查約束可以通過CREATE TABLE或ALTER TABLE語句來實現,根據用戶實際的完整性要求來定義。

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?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
喜歡就支持一下吧
點贊12 分享