中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

mysql中restrict的含義是什么

本篇內(nèi)容介紹了“MySQL中restrict的含義是什么”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比海倫網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式海倫網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋海倫地區(qū)。費(fèi)用合理售后完善,10多年實(shí)體公司更值得信賴(lài)。

在mysql中,restrict是約束的意思,是指對(duì)表中數(shù)據(jù)的一種限制,能夠幫助數(shù)據(jù)庫(kù)管理員更好地管理數(shù)據(jù)庫(kù),并且能夠確保數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性、有效性和完整性。MySQL支持6種約束:主鍵約束、外鍵約束、唯一約束、檢查約束、非空約束和默認(rèn)值約束。

MySQL中什么是約束?

restrict(約束)是指對(duì)表中數(shù)據(jù)的一種限制,能夠幫助數(shù)據(jù)庫(kù)管理員更好地管理數(shù)據(jù)庫(kù),并且能夠確保數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性、有效性和完整性。

例如,在數(shù)據(jù)表中存放年齡的值時(shí),如果存入 200、300 這些無(wú)效的值就毫無(wú)意義了。因此,使用約束來(lái)限定表中的數(shù)據(jù)范圍是很有必要的。

MySQL中的約束就是用來(lái)檢測(cè)數(shù)據(jù)正確性和合理性的,一般的錯(cuò)誤有:1,存在相同重復(fù)的數(shù)據(jù);2,錯(cuò)誤的數(shù)據(jù);3,數(shù)據(jù)丟失錯(cuò)誤(空數(shù)據(jù));4,指代不明確的錯(cuò)誤(表之間無(wú)法準(zhǔn)確聯(lián)系起來(lái))等。

MySQL的約束就是用來(lái)解決上述問(wèn)題的,比如身份證號(hào)不能重復(fù),收貨地址不能空。如果違反了約束,則數(shù)據(jù)操作行為被制止。

在 MySQL 中,主要支持以下 6 種約束:

1)主鍵約束

主鍵約束是使用最頻繁的約束。在設(shè)計(jì)數(shù)據(jù)表時(shí),一般情況下,都會(huì)要求表中設(shè)置一個(gè)主鍵。

主鍵是表的一個(gè)特殊字段,該字段能唯一標(biāo)識(shí)該表中的每條信息。例如,學(xué)生信息表中的學(xué)號(hào)是唯一的。

2)外鍵約束

外鍵約束經(jīng)常和主鍵約束一起使用,用來(lái)確保數(shù)據(jù)的一致性。

例如,一個(gè)水果攤,只有蘋(píng)果、桃子、李子、西瓜 4 種水果,那么,你來(lái)到水果攤要買(mǎi)水果只能選擇蘋(píng)果、桃子、李子和西瓜,不能購(gòu)買(mǎi)其它的水果。

3)唯一約束

唯一約束與主鍵約束有一個(gè)相似的地方,就是它們都能夠確保列的唯一性。與主鍵約束不同的是,唯一約束在一個(gè)表中可以有多個(gè),并且設(shè)置唯一約束的列是允許有空值的,雖然只能有一個(gè)空值。

例如,在用戶(hù)信息表中,要避免表中的用戶(hù)名重名,就可以把用戶(hù)名列設(shè)置為唯一約束。

4)檢查約束

檢查約束是用來(lái)檢查數(shù)據(jù)表中,字段值是否有效的一個(gè)手段。

例如,學(xué)生信息表中的年齡字段是沒(méi)有負(fù)數(shù)的,并且數(shù)值也是有限制的。如果是大學(xué)生,年齡一般應(yīng)該在 18~30 歲之間。在設(shè)置字段的檢查約束時(shí)要根據(jù)實(shí)際情況進(jìn)行設(shè)置,這樣能夠減少無(wú)效數(shù)據(jù)的輸入。

5)非空約束

非空約束用來(lái)約束表中的字段不能為空。例如,在學(xué)生信息表中,如果不添加學(xué)生姓名,那么這條記錄是沒(méi)有用的。

6)默認(rèn)值約束

默認(rèn)值約束用來(lái)約束當(dāng)數(shù)據(jù)表中某個(gè)字段不輸入值時(shí),自動(dòng)為其添加一個(gè)已經(jīng)設(shè)置好的值。

例如,在注冊(cè)學(xué)生信息時(shí),如果不輸入學(xué)生的性別,那么會(huì)默認(rèn)設(shè)置一個(gè)性別或者輸入一個(gè)“未知”。

默認(rèn)值約束通常用在已經(jīng)設(shè)置了非空約束的列,這樣能夠防止數(shù)據(jù)表在錄入數(shù)據(jù)時(shí)出現(xiàn)錯(cuò)誤。

以上 6 種約束中,一個(gè)數(shù)據(jù)表中只能有一個(gè)主鍵約束,其它約束可以有多個(gè)。

操作表的約束

1、給一張表添加主鍵約束

一張表的只能有一個(gè)主鍵,添加主鍵有兩種方式。

       單一主鍵:使用一個(gè)列作為主鍵列,當(dāng)該列的值有重復(fù)時(shí),則違反唯一約束。

       聯(lián)合主鍵:使用多個(gè)列作為主鍵列,當(dāng)多個(gè)列的值都相同時(shí),則違反唯一約束。指的是:使用多個(gè)列的組合形式來(lái)確定主鍵,當(dāng)出現(xiàn)組合重復(fù)就無(wú)效,如00,01,10,11,12,22這樣的組合形式。

使用DDL語(yǔ)句添加主鍵約束。示例:

ALTER TABLE 表名 ADD PRIMARY KEY(列名);
alter table emp add primary key(employee_id);//選取employee_id作為主鍵
alter table emp add primary key(employee_id,shenfen_id);//聯(lián)合主鍵

2、給一張表添加自增長(zhǎng)主鍵約束

auto_increment。數(shù)據(jù)庫(kù)管理系統(tǒng)自動(dòng)維護(hù)表時(shí)自動(dòng)加上的主鍵,利用自然數(shù)自增的方式確定主鍵。同樣的,自增長(zhǎng)主鍵也是把某一列用作主鍵。當(dāng)表中添加了主鍵的字段增加了數(shù)據(jù),則主鍵自動(dòng)加1。

自增長(zhǎng)主鍵和一般主鍵約束可以相互轉(zhuǎn)化。

1, 一個(gè)表中只能有一個(gè)列為自動(dòng)增長(zhǎng)。2,自動(dòng)增長(zhǎng)的列的類(lèi)型必須是整數(shù)類(lèi)型。3,自動(dòng)增長(zhǎng)只能添加到具備主鍵約束唯一性約束的列上。4,刪除主鍵約束或唯一性約束,如果該列擁有自動(dòng)增長(zhǎng)能力,則需要先去掉自動(dòng)增長(zhǎng)然后在刪除約束。

       注意點(diǎn):如果之前給某個(gè)字段添加了自增長(zhǎng)屬性,則刪除這個(gè)字段時(shí)要先刪除自增長(zhǎng)屬性。

alter table 表名 modify 主鍵 類(lèi)型 auto_increment;
alter table emp modify employee_id int auto_increment;

或者在Navicat中添加主鍵:

mysql中restrict的含義是什么

3、刪除一張表中的主鍵約束

使用DDL語(yǔ)句刪除主鍵。

ALTER TABLE 表名 DROP PRIMARY KEY;
alter table emp drop primary key;

       注意:刪除主鍵時(shí),如果主鍵列具備自動(dòng)增長(zhǎng)能力,需要先去掉自動(dòng)增長(zhǎng),然后在刪除主鍵。

alter table emp modify employee_id int;//去掉自增長(zhǎng),與添加自增長(zhǎng)代碼地區(qū)別就是沒(méi)有auto_increament
alter table emp drop primary key;

4、給一張表添加外鍵約束

使用DDL語(yǔ)句添加外鍵約束??梢越o一張表設(shè)置多個(gè)外鍵。

ALTER  TABLE 表名 ADD CONSTRAINT 約束名 FOREIGN  KEY(列名) REFERENCES 參照的表名(參照的列名);
alter table emp add constraint emp_fk
foreign key(dept_id) references
departments(department_id);

或在在Navicat中添加外鍵。外鍵名稱(chēng)常使用:表名_fk,表名_fk1表示。

mysql中restrict的含義是什么

5、刪除一張表的外鍵約束

       使用DDL 語(yǔ)句刪除外鍵約束?;蛘咴贜avicat中主動(dòng)刪除外鍵。

ALTER TABLE 表名 DROP FOREIGN KEY 約束名;
alter table emp drop foreign key emp_fk;

mysql中restrict的含義是什么

6、給表中某字段添加唯一性約束

使用DDL語(yǔ)句添加唯一性約束?;蛟谠贜avicat中添加唯一性約束。

ALTER TABLE 表名 ADD CONSTRAINT 約束名 UNIQUE(列名);
alter table emp add constraint emp_uk unique(name);

mysql中restrict的含義是什么

7、刪除表中某字段的唯一性約束

使用DDL語(yǔ)句刪除唯一性約束。刪除之前需要弄清楚刪除的約束名是對(duì)哪一個(gè)字段進(jìn)行約束的。

ALTER TABLE 表名 DROP KEY 約束名;
alter table emp drop key emp_uk;

8、給表中某個(gè)字段添加非空約束

使用DDL語(yǔ)句添加非空約束?;蛘逳avicat。

ALTER TABLE 表名 MODIFY 列名 類(lèi)型 NOT NULL;
alter table emp modify salary float(8,2) not NULL;

mysql中restrict的含義是什么

9、刪除表中某個(gè)字段的非空約束

使用DDL語(yǔ)句刪除非空約束。

ALTER TABLE 表名 MODIFY 列名 類(lèi)型 NULL;
alter table emp modify salary float(8,2) NULL;

mysql中restrict的含義是什么

創(chuàng)建表的時(shí)候添加約束

上面介紹了當(dāng)一張表已經(jīng)存在之后如何添加約束。下面介紹在一開(kāi)始新建表的時(shí)候如何添加約束。

1、查詢(xún)表中加了哪些約束?

 SHOW KEYS FROM 表名;

2、創(chuàng)建表時(shí)添加約束

       創(chuàng)建 depts 表包含 department_id 該列為主鍵且自動(dòng)增長(zhǎng),department_name 列不允許重復(fù),location_id 列不允含有空值。

create table depts
(
department_id int primary key auto_increment,
department_name varchar(30) unique,
location_id int not null;
);

“mysql中restrict的含義是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

文章標(biāo)題:mysql中restrict的含義是什么
瀏覽路徑:http://www.2m8n56k.cn/article28/jphsjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司、微信小程序、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司
主站蜘蛛池模板: 黄色三级三级三级免费看 | 国产午夜亚洲精品理论片不卡 | 亚洲性无码av在线 | 国产在线视频欧美亚综合 | 亚洲欧美在线精品一区二区 | 久久中精品中文 | 国产精品99精品久久免费 | 美女被cao免费看在线看网站 | 美日韩一级 | 免费观看一级成人毛片 | 香蕉视频黄色在线观看 | 欧美精品久久一区二区三区 | 日本三级香港三级网站 | 一级片在线观看视频 | 深夜爽爽福利gif在线观看 | aa毛片免费全部播放完整 | 综合色久 | 亚洲精品一区二区三区美女 | 久久se精品一区二区国产 | 欧美成人a | 欧美国产成人一区二区三区 | 国产精品免费精品自在线观看 | 一级国产精品一级国产精品片 | 成人午夜亚洲影视在线观看 | 日本一区二区三区不卡视频中文字幕 | 真正国产乱子伦高清对白 | 亚洲一级毛片免观看 | 精品一区二区三区在线观看l | 国产精品亚洲专一区二区三区 | 一区二区精品在线观看 | 九九热视频精品 | 精品久久国产老人久久综合 | 亚洲在线中文字幕 | 偷偷久久| 国产精品久久久久久影视 | 久艹视频在线 | 俄罗斯a级毛片 | 亚洲视频免费在线看 | 国产欧美视频在线观看 | 久久久久久综合一区中文字幕 | 亚洲在线免费 |