日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL表级完整性约束

發布時間:2025/3/12 数据库 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL表级完整性约束 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MySQL表級完整性約束

為防止不符合規范的數據存入數據庫,在用戶對數據進行插入、修改、刪除等操作時,MySQL提供 了一種機制來檢查數據庫是否滿足規定的條件,以保證數據庫中數據的準確性和一致性,這種機制 就是完整性約束。MySQL中主要支持六種完整性約束,如表所示。 完整性約束
約束條件約束描述
PRIMARY KEY主鍵約束,約束的值可唯一的標識對應的記錄
NOT NULL非空字段的值不能為空
UNIQUE唯一約束,約束1字段的值是唯一的
CHECK檢查約束,限制某個字段的取值范圍
DEFAULT默認值約束,約束字段的默認值
AUTO_INCREMENT自動增加位數,約束字段的值自動遞增
FOREIGN KEY外鍵約束,約束與表之間的關系

?

?

?

?

?

?

?

?

?

約束從作用上可以分為兩類:(1) 表級約束:可以約束表中任意一個或多個字段。與列定義的相互獨立,不包含 在列表定義中;與定義用‘,’分隔;必須指出要約束的列的名稱;(2) 列級約束:包含在列定義中,直接跟在該列的其他定義之后,用空格分隔,不必指定列名;

?

1、主鍵約束 主鍵約束(PRIMARY KEY,縮寫PK),是數據庫中最重要的一種約束,其作用是約束表中的某個字段可以 唯一標識一條記錄。因此,使用主鍵約束可以快速查找表中的記錄,就像人的身份證、學生的學號等等, 設置主鍵的字段取值不能重復(唯一),也不能為空(非空),否則無法唯一標識一條記錄。2、非空約束 非空約束(NOT NULL,縮寫NK),規定一張表中指定的某個字段的值不能為空(NULL),設置了非空約束 的字段,在插入的數據為NULL時,數據庫會提示錯誤,導致數據無法插入。 無論是單個字段還是多個字段非空約束的添加只能使用列級約束(非空約束無表級約束)

為已存在表中的字段添加非空約束

alter table student modify stu_sex varchar(1)not null;

使用ALTER TABLE語句刪除非空約束

3、唯一約束: 唯一約束(UNIQUE,縮寫QK):它規定了一張表中指定的某個字段的值不能重復,即這一字段的 每個值都是唯一的。如果想要某個字段的值不重復,那么就可以為該字段添加唯一約束。4、檢查約束 檢查約束(CHECK)用來限制某個字段的取值范圍,可以定義為列級約束,也可以定義為表級約束。 MySQL8開始檢查表級約束5、默認值約束 默認值約束(DEFAULT)用來規定字段的默認值。。如果某個被設置為DEFAULT約束的字段沒插入具體指, 那么該字段的值將會被默認值填充。 默認值約束的設置與非空約束一樣,也只能使用列級約束。6、字段值自動增加約束 自增約束(AUTO_INCREMENT)可以使表中某個字段的值自動增加。一張表中只能有一個自增長字段, 并且該字段必須定義了約束(該約束可以使主鍵約束、唯一約束以及自增長約束),如果自增長字段沒有 定義約束,數據庫會提示錯誤。 由于自增約束會自動生成唯一的ID,所以自增約束通常會配合主鍵使用,并且只適用于數據整型。一般情 況下,設置自增約束字段的值會從1開始,每增加一條記錄,該字段的值就加1.

為已存在表中的字段添加自增約束

create table stu(stu_id int(10) primary key,stu_name varchar(3),stu_sex varchar(1));

使用ALTER TABLE語句刪除自增約束

alter table stu modify stu_id int(10);

總結

以上是生活随笔為你收集整理的MySQL表级完整性约束的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。