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

歡迎訪問 生活随笔!

生活随笔

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

数据库

《MySQL——约束》

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

目錄

    • 主鍵約束
    • 唯一主鍵
    • 非空約束
    • 默認約束
    • 外鍵約束

主鍵約束

-- 主鍵約束 -- 使某個字段不重復且不得為空,確保表內所有數據的唯一性。 CREATE TABLE user (id INT PRIMARY KEY,name VARCHAR(20) );-- 聯合主鍵 -- 聯合主鍵中的每個字段都不能為空,并且加起來不能和已設置的聯合主鍵重復。 CREATE TABLE user (id INT,name VARCHAR(20),password VARCHAR(20),PRIMARY KEY(id, name) );-- 自增約束 -- 自增約束的主鍵由系統自動遞增分配。 CREATE TABLE user (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(20) );-- 添加主鍵約束 -- 如果忘記設置主鍵,還可以通過SQL語句設置(兩種方式): ALTER TABLE user ADD PRIMARY KEY(id); ALTER TABLE user MODIFY id INT PRIMARY KEY;-- 刪除主鍵 ALTER TABLE user drop PRIMARY KEY;

唯一主鍵

-- 建表時創建唯一主鍵 CREATE TABLE user (id INT,name VARCHAR(20),UNIQUE(name) );-- 添加唯一主鍵 -- 如果建表時沒有設置唯一建,還可以通過SQL語句設置(兩種方式): ALTER TABLE user ADD UNIQUE(name); ALTER TABLE user MODIFY name VARCHAR(20) UNIQUE;-- 刪除唯一主鍵 ALTER TABLE user DROP INDEX name;

非空約束

-- 建表時添加非空約束 -- 約束某個字段不能為空 CREATE TABLE user (id INT,name VARCHAR(20) NOT NULL );-- 移除非空約束 ALTER TABLE user MODIFY name VARCHAR(20);

默認約束

-- 建表時添加默認約束 -- 約束某個字段的默認值 CREATE TABLE user2 (id INT,name VARCHAR(20),age INT DEFAULT 10 );-- 移除非空約束 ALTER TABLE user MODIFY age INT;

外鍵約束

-- 班級 CREATE TABLE classes (id INT PRIMARY KEY,name VARCHAR(20) );-- 學生表 CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(20),-- 這里的 class_id 要和 classes 中的 id 字段相關聯class_id INT,-- 表示 class_id 的值必須來自于 classes 中的 id 字段值FOREIGN KEY(class_id) REFERENCES classes(id) );

需要注意

1. 主表(父表)classes 中沒有的數據值,在副表(子表)students 中,是不可以使用的; 2. 主表中的記錄被副表引用時,主表不可以被刪除。

總結

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

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