最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL數(shù)據(jù)庫(kù)的約束限制詳解

 更新時(shí)間:2022年08月03日 09:06:46   作者:面屏思過???????  
這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)的約束限制詳解,數(shù)據(jù)庫(kù)的約束是對(duì)表中數(shù)據(jù)進(jìn)行的一種限制,為了保證數(shù)據(jù)的正確性、有效性、完整性,下文簡(jiǎn)單介紹需要的朋友可以參考一下

一、介紹

數(shù)據(jù)庫(kù)的約束是對(duì)表中數(shù)據(jù)進(jìn)行的一種限制,為了保證數(shù)據(jù)的正確性、有效性、完整性。

無論是在添加數(shù)據(jù)還是在刪除數(shù)據(jù)的時(shí)候,都能提供幫助。所有的關(guān)系型數(shù)據(jù)庫(kù)都支持對(duì)數(shù)據(jù)表的約束。

  • 主鍵:唯一標(biāo)識(shí)一條記錄,不能重復(fù),不允許為空。主要用來保證數(shù)據(jù)的完整性。
  • 外鍵: 表的外鍵是另一表的主鍵,外鍵可以有重復(fù),可以為控制。主要用來和其他表建立聯(lián)系。

二、操作

添加

添加主鍵:

// 一般設(shè)置id為主鍵
CREATE TABLE student(
	id INT PRIMARY KEY,
	NAME VARCHAR(30),
	age INT
);

添加自增主鍵:

CREATE TABLE student(
	id INT PRIMARY KEY AUTO_INCREMENT,
	NAME VARCHAR(30),
	age INT
);

創(chuàng)建唯一約束:

// 這里age為唯一約束
CREATE TABLE student(
	id INT PRIMARY KEY AUTO_INCREMENT,
	NAME VARCHAR(30),
	age INT UNIQUE
);

創(chuàng)建非空約束:

// 這里 NAME 屬性為非空約束
CREATE TABLE student(
	id INT PRIMARY KEY AUTO_INCREMENT,
	NAME VARCHAR(30) NOT NULL,
	age INT UNIQUE
);

建表時(shí)添加外鍵約束:

// 這里是指orderlist這個(gè)表的uid是USER表id主鍵的外鍵約束 
CREATE TABLE orderlist(
	id INT PRIMARY KEY AUTO_INCREMENT,    -- id
	number VARCHAR(20) NOT NULL,          -- 訂單編號(hào)
	uid INT,			      -- 外鍵列
	CONSTRAINT ou_fk1 FOREIGN KEY (uid) REFERENCES USER(id)
);

建表后單獨(dú)添加主鍵約束:

ALTER TABLE student MODIFY id INT PRIMARY KEY;

建表后單獨(dú)添加非空約束:

ALTER TABLE student MODIFY NAME VARCHAR(30) NOT NULL;

建表后單獨(dú)添加唯一約束:

ALTER TABLE student MODIFY age INT UNIQUE;

建表后單獨(dú)添加外鍵約束:

ALTER TABLE orderlist ADD CONSTRAINT ou_fk1 FOREIGN KEY (uid) REFERENCES USER(id);

刪除

刪除主鍵:

LTER TABLE student DROP PRIMARY KEY;

刪除自增約束:

ALTER TABLE student MODIFY id INT;

刪除唯一約束:

ALTER TABLE student DROP INDEX age;

刪除非空約束:

ALTER TABLE student MODIFY NAME VARCHAR(30);

刪除外鍵約束:

ALTER TABLE orderlist DROP FOREIGN KEY ou_fk1;

外鍵聯(lián)級(jí)操作

	添加外鍵約束,同時(shí)添加級(jí)聯(lián)更新  標(biāo)準(zhǔn)語(yǔ)法:
	ALTER TABLE 表名 ADD CONSTRAINT 外鍵名 FOREIGN KEY (本表外鍵列名) REFERENCES 主表名(主鍵列名) 
	ON UPDATE CASCADE;
	
	添加外鍵約束,同時(shí)添加級(jí)聯(lián)刪除  標(biāo)準(zhǔn)語(yǔ)法:
	ALTER TABLE 表名 ADD CONSTRAINT 外鍵名 FOREIGN KEY (本表外鍵列名) REFERENCES 主表名(主鍵列名) 
	ON DELETE CASCADE;
	
	添加外鍵約束,同時(shí)添加級(jí)聯(lián)更新和級(jí)聯(lián)刪除  標(biāo)準(zhǔn)語(yǔ)法:
	ALTER TABLE 表名 ADD CONSTRAINT 外鍵名 FOREIGN KEY (本表外鍵列名) REFERENCES 主表名(主鍵列名) 
	ON UPDATE CASCADE ON DELETE CASCADE;

到此這篇關(guān)于MySQL數(shù)據(jù)庫(kù)的約束限制詳解的文章就介紹到這了,更多相關(guān)MySQL 約束內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL組合索引與最左匹配原則詳解

    MySQL組合索引與最左匹配原則詳解

    這篇文章主要給大家介紹了關(guān)于MySQL組合索引與最左匹配原則的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 使用cgroups來限制MySQL企業(yè)備份服務(wù)對(duì)資源的占用

    使用cgroups來限制MySQL企業(yè)備份服務(wù)對(duì)資源的占用

    這篇文章主要介紹了使用cgroups來限制MySQL企業(yè)備份服務(wù)對(duì)資源的占用,以限制mysqlbackup相關(guān)的進(jìn)程和線程對(duì)CPU和內(nèi)存的閑時(shí)消耗,需要的朋友可以參考下
    2015-06-06
  • MySQL 自動(dòng)清理binlog日志的方法

    MySQL 自動(dòng)清理binlog日志的方法

    這篇文章主要介紹了MySQL 自動(dòng)清理binlog日志的方法,需要的朋友可以參考下
    2016-10-10
  • mysql 5.7.16 免安裝版安裝配置方法圖文教程

    mysql 5.7.16 免安裝版安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.16 免安裝版安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • mysql常用命令行操作語(yǔ)句

    mysql常用命令行操作語(yǔ)句

    MySQL很早以前只能采用DOS式界面,后來雖然硬件支持圖形界面(平常的軟件操作界面),但是命令行界面(就是DOS界面)以它 簡(jiǎn)單,高效,方便 的特色而被保留下來。這就是用DOS界面的原因。
    2016-05-05
  • Linux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法

    Linux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法

    下面小編就為大家?guī)硪黄狶inux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Mysql中的事務(wù)是什么如何使用

    Mysql中的事務(wù)是什么如何使用

    事務(wù)是邏輯上的一組操作,組成這組操作的各個(gè)單元,要不全都成功要不全都失敗,這個(gè)特性就是事務(wù),下面為大家介紹下Mysql中的事務(wù)的具體使用
    2013-12-12
  • mysql通過my.cnf修改默認(rèn)字符集為utf-8的方法和注意事項(xiàng)

    mysql通過my.cnf修改默認(rèn)字符集為utf-8的方法和注意事項(xiàng)

    本文主要給大家介紹mysql通過my.cnf修改默認(rèn)字符集為utf-8的方法,當(dāng)然你也可以設(shè)置成別的,國(guó)際點(diǎn)還是utf-8好,以及在修改過程中要注意的一些事項(xiàng),有需要的朋友們可以參考借鑒。
    2016-09-09
  • CentOS 7中源碼安裝MySQL 5.7.6+詳細(xì)教程

    CentOS 7中源碼安裝MySQL 5.7.6+詳細(xì)教程

    最近在CentOS 7中源碼安裝MySQL 5.7.6+,發(fā)現(xiàn)MySQL5.7.6+以后的安裝方式真的與以前版本的MySQL安裝方式大大的不同呀。不自己安裝一把,你都不知道不同之處在哪,下面這篇文章是通過自己的安裝過程總結(jié)的一篇安裝教程,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • /var/log/pacct文件導(dǎo)致MySQL啟動(dòng)失敗的案例分享

    /var/log/pacct文件導(dǎo)致MySQL啟動(dòng)失敗的案例分享

    這篇文章主要介紹了/var/log/pacct文件導(dǎo)致MySQL啟動(dòng)失敗的案例分享,這是個(gè)比較讓人郁悶的問題,找不到MySQL啟動(dòng)失敗的原因進(jìn)可以按此文的方法試一試,需要的朋友可以參考下
    2015-01-01

最新評(píng)論

萨嘎县| 木里| 庄浪县| 泰兴市| 北辰区| 安陆市| 汕头市| 浦城县| 贡觉县| 木里| 建湖县| 常州市| 仙桃市| 平舆县| 太白县| 浙江省| 玛纳斯县| 额尔古纳市| 阿荣旗| 新邵县| 永新县| 梁平县| 扶风县| 页游| 乌拉特前旗| 托克托县| 衡南县| 汉寿县| 漳州市| 抚州市| 武威市| 静海县| 垦利县| 宜兰县| 札达县| 肇庆市| 进贤县| 巍山| 齐河县| 醴陵市| 隆安县|