課程
/數(shù)據(jù)庫
/Oracle
/Oracle數(shù)據(jù)庫開發(fā)必備利器之SQL基礎(chǔ)
如果在表級設(shè)置多個檢查約束,應(yīng)如何設(shè)置
2016-02-26
源自:Oracle數(shù)據(jù)庫開發(fā)必備利器之SQL基礎(chǔ) 5-12
正在回答
首先針對你這個問題進行解析下,CHECK其實就是一個檢查索引,跟其他索引本質(zhì)上并無區(qū)別,所以多個CHECK既可以理解為同時指定多個索引。
SQL> CREATE TABLE userinfo_c2
? 2 ?(id varchar2(10) PRIMARY KEY,
? 3 ?username varchar2(20),
? 4 ?salay number(5,0),
? 5 ?CONSTRAINT ck_c2_salay CHECK(salay >= 0),
? 6 ?CONSTRAINT ck_c2_salay_max CHECK(salay <= 10000));
主鍵約束
CREATE TABLE Persons(Id_P int NOT NULL,
CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName))
外鍵約束
CREATE TABLE Orders(Id_O int NOT NULL,
Id_P int FOREIGN KEY REFERENCES Persons(Id_P)
)
舉報
為你帶來Oracle開發(fā)必備的sql基礎(chǔ),為后續(xù)課程學(xué)習(xí)打下好的基礎(chǔ)
1 回答主鍵約束和唯一約束
1 回答主鍵約束與唯一約束
1 回答外鍵約束?
2 回答主鍵約束
2 回答列級約束和表級約束有什麼區(qū)別?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-08-14
首先針對你這個問題進行解析下,CHECK其實就是一個檢查索引,跟其他索引本質(zhì)上并無區(qū)別,所以多個CHECK既可以理解為同時指定多個索引。
SQL> CREATE TABLE userinfo_c2
? 2 ?(id varchar2(10) PRIMARY KEY,
? 3 ?username varchar2(20),
? 4 ?salay number(5,0),
? 5 ?CONSTRAINT ck_c2_salay CHECK(salay >= 0),
? 6 ?CONSTRAINT ck_c2_salay_max CHECK(salay <= 10000));
2016-02-26
主鍵約束
CREATE TABLE Persons
(
Id_P int NOT NULL,
CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName))
外鍵約束
CREATE TABLE Orders
(
Id_O int NOT NULL,
Id_P int FOREIGN KEY REFERENCES Persons(Id_P)
)