欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

oracle中數(shù)據(jù)完整性的示例分析-創(chuàng)新互聯(lián)

小編給大家分享一下oracle中數(shù)據(jù)完整性的示例分析,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

成都創(chuàng)新互聯(lián)公司長期為近1000家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為蓬萊企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站制作、成都外貿網(wǎng)站建設蓬萊網(wǎng)站改版等技術服務。擁有十多年豐富建站經驗和眾多成功案例,為您定制開發(fā)。

1.  數(shù)據(jù)的完整性簡介

    就是正確性、準確性,包含三種:實體完整性、參照完整性、

用戶自定義完整性。Oracle中主要通過約束、觸發(fā)器、過程函數(shù)

實現(xiàn)的。 以下內容講通過約束實現(xiàn)數(shù)據(jù)完整性。

舉例兩個表:

學生(學號,姓名,系編號)

系(系編號,系名稱)

員工(編號,姓名,出生日期,工作日期)

那么:

學號是主鍵列,其值不能錯誤,如不能負值,這就是實體完整性;

系編號是外鍵,學生表的系編號參照系表,也就是說學生表的系編號的值必須在系表的系編號的值范圍內【或者為空】,這就是參照完整性;

員工表的出生日期一定需要小宇工作日期,這就是用戶自定義完整性。

2.  維護數(shù)據(jù)的完整性,有not null、unique、check、primary key、foreign key五種。

    not null例如學生的姓名;unique例如學生的學號;primary key主鍵、foreign key外鍵、check可以按照用戶要求,進行自動檢查。

    unique不可以重復,但是可以為空。

    primary key不可以重復,也不能為空。

    一個表只能一個primary key,卻可以多個unique。

    not null只能在列內定義,其他4種約束可以在列定義結束后,在表內定義。

not null示例(這里的not null約束由系統(tǒng)自動起名):

create table yg2(bh number(4) not null,xm varchar2(8));

check示例:

create table yg3(bh number(4) not null  check (bh>0  and  bh<10000),   xm varchar2(8));

unique示例:

create table yg4(部門號 number(4) not null, 部門內號  number(4) ,   xm varchar2(8) , unique(部門號,部門內號) );

default的使用

  create table gz_新員工  (bh number(4),xm varchar2(8),gz number(10) default 1000 ); //適用于沒有向列顯式的指定數(shù)值的情況。

primary key示例(此列不允許為空,而且ORACLE會自動為主鍵列創(chuàng)建索引,這里的primary key約束由用戶顯式起名):

create table student(xh number(6)  constraint code_pk  primary key , xm varchar2(20));

foreign key示例(實現(xiàn)兩個表之間參照與被參照的關系,外鍵只能取主鍵已經有的值,這里的foreign key由系統(tǒng)自動起名):

create table address (xh number(8) ,zz varchar2(50) , foreign key(xh) references student(xh));

試驗primary key和foreign key約束:

insert into student values(1,'張一');

insert into address values(1,'鄭州');

insert into address values(2,'鄭州');

(3)用戶的約束在user_constraints表、和user_cons_columns表中

 select * from user_constraints;

實踐練習題目:

問題:

建立2個表,一個是StudentInformatino(學號sno,姓名

sname,年齡sage,性別smale,系編號

deptNo),一個是department(系編號deptno,

系名稱deptname)。

 要求:

    每個表有主鍵。

    StudentInformation表建立外鍵。

    學生的姓名不能為空。

    學生的年齡要在18到50之間。

    學生的性別必須是男女之一,默認是男。

    StudentInformation表的deptno列,要參照department表的

deptno列。

3.2 給已有的表添加約束:

除了添加not null需要使用modify命令,其他都是類似alter table tablename  add  CONSTRAINTS的方式。

上面例子,允許stuInfo中的姓名可以為空:alter table stuinfo modify sname null;

允許stuInfo中的姓名不能重復:alter table stuinfo  add constraints  sname_unique  unique(sname) ;

要求department的系名稱列的內容,必須大于4個字符長度:alter table

department add constraints  deptName_check  check(length(deptName)>4);

3.3 刪除約束:

alter table 表名 drop constraint 約束名;

alter table department drop constraint deptName_check;  -- 刪除剛才建立的department表上的deptName_check 約束

刪除主鍵語句:alter table 表名 drop primary key;

   如果出錯:ORA-02273: 此唯一/主鍵已被某些外鍵引用,可以:alter table department drop primary key cascade;

   如果刪除一個主鍵被引用的表,可以:drop table 表名 cascade constraints;

看完了這篇文章,相信你對“oracle中數(shù)據(jù)完整性的示例分析”有了一定的了解,如果想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享標題:oracle中數(shù)據(jù)完整性的示例分析-創(chuàng)新互聯(lián)
瀏覽地址:http://www.chinadenli.net/article4/dcdpie.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供電子商務搜索引擎優(yōu)化ChatGPT域名注冊網(wǎng)站設計公司外貿建站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設