1. 定義主鍵約束
1.1 在創建表時定義主鍵約束
create table student
(
name varchar2(8),
studentid varchar2(10) primary key,
sex char(2)
);
1.2 創建表后,使用alter table命令添加約束
1.2.1 創建表
create table student
(
name varchar2(8),
studentid varchar2(10),
sex char(2)
);
1.2.2 添加主鍵約束
alter table student
add constraint pk_student primary key(studentid);
其中 constraint pk_student 用于給該主鍵約束定義名稱(可省略)
其中 pk_student?? 為約束名,用于修改約束,
例如:刪除該主鍵約束
alter table student
drop constraint pk_student??;
2 定義not null約束
not null 約束只能定義為列級約束
2.1 在創建表時定義not null約束
同樣的not null約束可以在創建表時定義
eg:
create table tset
(
name varchar2(8) NOT NULL,
studentid varchar2(10) primary key,
sex char(2)
);
2.2 創建表后,在修改表添加not null約束
2.2.1 創建表
create table tset
(
name varchar2(8),
studentid varchar2(10) primary key,
sex char(2)
);
2.2.2添加not null約束
alter table test modify name not null;
3 定義唯一性 unique約束
唯一性約束是指:被約束的字段不能出現重復輸入的值
唯一性與逐漸的區別:
(1)unique一個表可以定義多個,而primary key 一個表只能定義一個
(2)unique允許被約束的字段為空,而primary key不允許為空
3.1 創建表示定義unique約束
create table test
(
name varchar2(8) NOT NULL,
studentid varchar2(10) primary key,
sex char(2),
idnum char(18) unique
);
3.2創建表后,為表添加unique約束
3.2.1 創建表
create table test
(
name varchar2(8) NOT NULL,
studentid varchar2(10) primary key,
sex char(2),
idnum char(18)
);
3.2.2 添加約束
alter table test
add constraint un_idnum unique(idnum);
?
4 定義檢查check約束
檢查約束用來指定某列的可取值得范圍,只有符合條件的值才能輸入到表中
4.1 在創建表時定義check
create table test
(
name varchar2(8) NOT NULL,
studentid varchar2(10) primary key,
sex char(2) constraint ch_sex check(sex in ('男','女')),
idnum char(18)
);
4.2.1 創建表
create table test
(
name varchar2(8) NOT NULL,
studentid varchar2(10) primary key,
sex char(2),
idnum char(18)
);
4.2.2 添加檢查約束
alter table test add constraint ch_sex
check(sex in('男','女'));
5 定義外鍵約束
5.1 創建表示定義外鍵
5.1.1 在定義字段時定義外鍵
?
create table course
(
id varchar2(10) primary key,
classname varchar2(10),
studentid VARCHAR2(10) references test(studentid)
)
5.1.2? 定義字段后,再定義外鍵
create table course
(
id varchar2(10) primary key,
classname varchar2(10),
studentid VARCHAR2(10),
constraint fk_course foreign key(studentid)
references test(studentid)
);
*************注意兩種方式的區別*****************
5.2 通過alter table 命令創建外鍵約束
alter table course
add constraint fk_course foreign key(studentid) references test(studentid);
?
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
