真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

oracle如何建立約束,oracle中約束有哪幾種

oracle怎么約束

你那條語(yǔ)句有問(wèn)題,正確的寫法是

十多年專注成都網(wǎng)站制作,成都企業(yè)網(wǎng)站建設(shè),個(gè)人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識(shí)、方案,網(wǎng)站設(shè)計(jì)流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),專注于成都企業(yè)網(wǎng)站建設(shè),高端網(wǎng)頁(yè)制作,對(duì)茶藝設(shè)計(jì)等多個(gè)領(lǐng)域,擁有豐富的網(wǎng)站制作經(jīng)驗(yàn)。

create

table

students(student_id

NUMBER(5)

,CONSTRAINT

student_pk

PRIMAPY

KEY(student_id));

翻譯成中文是:

create

table

表名(列名

NUMBER(5)

,CONSTRAINT 約束名

PRIMAPY

KEY(列名));

意思是創(chuàng)建了個(gè)students表.你面就有一列.并且這列設(shè)置成了主鍵.

后面那個(gè)CONSTRAINT

student_pk

PRIMAPY

KEY(列名)

就是將這列設(shè)置成了主鍵!

他是對(duì)此列的一個(gè)約束.并且我們?yōu)檫@個(gè)約束創(chuàng)建了個(gè)名字叫student_pk

primary

key(列名)

這是一個(gè)主鍵約束.指明了這一列是主鍵.

oracle 添加、修改、刪除、約束-語(yǔ)法

創(chuàng)建表結(jié)構(gòu):

向表中添加主鍵約束

向表中添加Sequences

添加字段的語(yǔ)法:

修改字段的語(yǔ)法:

刪除字段的語(yǔ)法:

添加、修改、刪除多列的話,用逗號(hào)隔開(kāi)。

Oracle使用(九)_表的創(chuàng)建/約束/索引

表創(chuàng)建標(biāo)準(zhǔn)語(yǔ)法:

CREATE TABLE [schema.]table

(column datatype [DEFAULT expr] , …);

--設(shè)計(jì)要求:建立一張用來(lái)存儲(chǔ)學(xué)生信息的表,表中的字段包含了學(xué)生的學(xué)號(hào)、姓名、年齡、入學(xué)日期、年級(jí)、班級(jí)、email等信息,

--并且為grade指定了默認(rèn)值為1,如果在插入數(shù)據(jù)時(shí)不指定grade得值,就代表是一年級(jí)的學(xué)生

--DML是不需要commit的,隱式事務(wù)

create table student

(

stu_id number(10),

name varchar2(20),

age number(2),

hiredate date,

grade varchar2(10) default 1,

classes varchar2(10),

email varchar2(50)

);

-- 注意日期格式要轉(zhuǎn)換,不能是字符串,varchar2類型要用引號(hào),否則出現(xiàn)類型匹配

--DML 需要收到commit

insert into student values(20211114,'zhangsan',22,to_date('2021-11-14','YYYY-MM-DD'),'2','1',' 123@qq.com ');

insert into student(stu_id,name,age,hiredate,classes,email) values(20211114,'zhangsan',22,to_date('2021-11-14','YYYY-MM-DD'),'1',' 1234@qq.com ');

select * from student;

-- 給表添加列,添加新列時(shí)不允許為not null,因?yàn)榕c舊值不兼容

alter table student add address varchar(100);

-- 刪除列

alter table student drop column address;

--修改列

alter table student modify(email varchar2(100));

正規(guī)表設(shè)計(jì)使用power disinger

--表的重命名

rename student to stu;

-- 表刪除

drop table stu;

**

在刪除表的時(shí)候,經(jīng)常會(huì)遇到多個(gè)表關(guān)聯(lián)的情況(外鍵),多個(gè)表關(guān)聯(lián)的時(shí)候不能隨意刪除,使用如下三種方式:

2.表的約束(constraint)

約束:創(chuàng)建表時(shí),指定的插入數(shù)據(jù)的一些規(guī)則

約束是在表上強(qiáng)制執(zhí)行的數(shù)據(jù)校驗(yàn)規(guī)則

Oracle 支持下面五類完整性約束:

1). NOT NULL 非空約束 ---- 插入數(shù)據(jù)時(shí)列值不能空

2). UNIQUE Key 唯一鍵約束 ----限定列唯一標(biāo)識(shí),唯一鍵的列一般被用作索引

3). PRIMARY KEY 主鍵約束 ----唯一且非空,一張表最好有主鍵,唯一標(biāo)識(shí)一行記錄

4). FOREIGN KEY 外鍵約束---多個(gè)表間的關(guān)聯(lián)關(guān)系,一個(gè)表中的列值,依賴另一張表某主鍵或者唯一鍵

-- 插入部門編號(hào)為50的,部門表并沒(méi)有編號(hào)為50的,報(bào)錯(cuò)

insert into emp(empno,ename,deptno) values(9999,'hehe',50);

5). CHECK 自定義檢查約束---根據(jù)用戶需求去限定某些列的值,使用check約束

-- 添加主鍵約束/not null約束/check約束/唯一鍵約束

create table student

(

stu_id number(10) primary key,

name varchar2(20) not null,

age number(3) check(age0 and age126),

hiredate date,

grade varchar2(10) default 1,

classes varchar2(10),

email varchar2(50) unique,

deptno number(2),

);

-- 添加外鍵約束

create table stu

(

stu_id number(10) primary key,

name varchar2(20) not null,

age number(3) check(age0 and age126),

hiredate date,

grade varchar2(10) default 1,

classes varchar2(10),

email varchar2(50) unique,

deptno number(2),

FOREIGN KEY(deptno) references dept(deptno)

);

-- 創(chuàng)建表時(shí)沒(méi)添加外鍵約束 也可以修改 其中fk_0001為外鍵名稱

alter table student add constraint fk_0001 foreign key(deptno) references dept(deptno);

索引創(chuàng)建有兩種方式:

組合索引:多個(gè)列組成的索引

--索引:加快數(shù)據(jù)剪碎

create index i_ename on emp(ename);

--當(dāng)創(chuàng)建某個(gè)字段索引后,查詢某個(gè)字段會(huì)自動(dòng)使用到索引

select * from emp where ename = 'SMITH';

--刪除索引 索引名稱也是唯一的

drop index i_ename;

一些概念:

回表:

覆蓋索引

組合索引

最左匹配

Oracle如何添加主鍵約束

工具/材料

SQL Developer

01

首先打開(kāi)SQL Developer軟件,找一個(gè)沒(méi)有主鍵約束的表,如下圖所示

02

然后我們新建一個(gè)查詢,在界面中輸入如下的約束修改語(yǔ)句,如下圖所示,主要通過(guò)add constranint來(lái)添加約束

03

編寫完約束添加語(yǔ)句以后,點(diǎn)擊工具欄中的執(zhí)行按鈕,如下圖所示,如果輸出欄顯示已變更則證明主鍵約束創(chuàng)建成果

04

然后我們進(jìn)入STUDENT表的約束添加頁(yè)中可以看到,我們加的主鍵約束已經(jīng)添加進(jìn)去了,如下圖所示

05

另外,創(chuàng)建表的時(shí)候可以直接添加主鍵約束,如下圖所示,直接在表創(chuàng)建語(yǔ)句中添加constraint即可

06

表創(chuàng)建完以后,記得在左側(cè)刷新數(shù)據(jù)庫(kù)信息,如下圖所示,因?yàn)槟銊?chuàng)建的信息不刷新的話不會(huì)更新

07

最后打開(kāi)你所創(chuàng)建的表,看到你添加的主鍵約束已經(jīng)加入進(jìn)來(lái)了,這種方式的效果alter的方式是一樣的


本文標(biāo)題:oracle如何建立約束,oracle中約束有哪幾種
路徑分享:http://weahome.cn/article/hoihhc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部