亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談Sql Server數(shù)據(jù)庫數(shù)據(jù)完整性

        2013-01-01 00:00:00趙雅文
        科技資訊 2013年3期

        摘 要:現(xiàn)今社會是一個數(shù)據(jù)化的社會,各行各業(yè)都有大量的,不同種類的數(shù)據(jù)進行交換。數(shù)據(jù)庫的使用已經(jīng)滲透到生活中的各個方面。而數(shù)據(jù)庫的完整性是設計數(shù)據(jù)庫的的重要內(nèi)容,關系到數(shù)據(jù)庫的性能的好壞。如何防止將一些無效的或錯誤的信息添加到數(shù)據(jù)庫中呢?本文對Sql Server2005數(shù)據(jù)庫數(shù)據(jù)完整性約束進行了探討。

        關鍵詞:Sql Server 數(shù)據(jù)完整性

        中圖分類號:TP3 文獻標識碼:A 文章編號:1672-3791(2013)01(c)-0027-01

        數(shù)據(jù)完整性是指數(shù)據(jù)的正確性、有效性和兼容性,防止錯誤數(shù)據(jù)進入數(shù)據(jù)庫,保證數(shù)據(jù)庫中的數(shù)據(jù)質量。本文詳細介紹了數(shù)據(jù)庫的數(shù)據(jù)完整性以及如何對數(shù)據(jù)庫進行完整性約束。

        1 數(shù)據(jù)完整性的概念及其分類

        數(shù)據(jù)完整性是指存儲在數(shù)據(jù)庫中的數(shù)據(jù)是正確的,而且在邏輯上符合現(xiàn)實情況的要求,它是SQL Server用于保證數(shù)據(jù)庫中數(shù)據(jù)一致性的一種機制,以防止非法信息存在于數(shù)據(jù)庫中。數(shù)據(jù)庫中的數(shù)據(jù)要求具有正確性、有效性和兼容性。數(shù)據(jù)的正確性是指數(shù)據(jù)的合法性;有效性是指數(shù)據(jù)是否屬于所定義的有效范圍;相容性是指妙術同一現(xiàn)實的數(shù)據(jù)應該保持一致。SQL Server 2005提供了許多措施來保護數(shù)據(jù)的完整性,如數(shù)據(jù)類型、主鍵、外鍵、默認值、約束和規(guī)則等。

        數(shù)據(jù)庫完整性一般分為4類:實體完整性、域完整性、引用完整性和用戶定義完整性。

        1.1 實體完整性

        實體完整性的基本思想是標識數(shù)據(jù)庫中存放的每一個實體。實體就是數(shù)據(jù)庫所要標識的一個實際的物體和事件。實體完整性要求每個實體都保持唯一性。例如,學生信息表中的學號列、公民信息表中的身份證號列都可以有效地標識這些實體,保證其唯一性。SQL Server 2005實現(xiàn)實體完整性主要是通過唯一索引、UNIQUE約束、PRIMARY KEY約束或IDENTITY屬性,強制表的標識符列或主鍵來實現(xiàn)的。

        1.2 域完整性

        域完整性是指給定列的輸入有效性,即如何限制向表中輸入值的范圍。它要求表中指定列的數(shù)據(jù)具有正確的數(shù)據(jù)類型、格式和有效的數(shù)據(jù)范圍。例如,在成績表的“成績”列中,只能輸入特定范圍內(nèi)的值(如0~100),才是合法的數(shù)據(jù)。域完整性可以通過強制域完整性限制類型(通過使用數(shù)據(jù)類型)、限制格式(通過使用CHECK約束和規(guī)則)或限制可能值的范圍(通過使用FOREIGN KEY約束、CHECK約束、DEFAULT定義、NOT NULL定義和規(guī)則)來實現(xiàn)。

        1.3 引用完整性

        引用完整性又稱為參照完整性。在輸入或刪除記錄時,引用完整性用于維持參照表和被參照表之間的數(shù)據(jù)一致性。用于確保鍵值在所有表中一致。這類一致性要求不能引用不存在的值。如果一個鍵值發(fā)生更改,則整個數(shù)據(jù)庫中,對該鍵值的所有引用要進行一致的更改。在被參照表中,當其主鍵值被其他表所參照時,該行不能被刪除也不允許改變。在參照表中,不允許參照不存在的主鍵值。在SQL Server 2005中,引用完整性通過主鍵(PRIMARY KEY)和外鍵(FOREIGN KEY)約束來實現(xiàn)。

        1.4 用戶定義的完整性

        用戶定義的完整性即是針對某個特定關系數(shù)據(jù)庫的約束條件,它反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求。SQL Server 2005提供了一些工具來幫助用戶實現(xiàn)數(shù)據(jù)完整性,其中最主要的是規(guī)則(Rule)、約束(Constraint)和觸發(fā)器(Trigger)。

        2 數(shù)據(jù)完整性約束的實現(xiàn)

        下面以創(chuàng)建一個“學生管理數(shù)據(jù)庫”為例來說明SQL Server對數(shù)據(jù)庫完整性約束的實現(xiàn)。

        2.1 創(chuàng)建“學生管理數(shù)據(jù)庫”

        create database學生管理數(shù)據(jù)庫

        on (name=學生管理數(shù)據(jù)庫,filename=’F:/sql/學生管理.mdf’,size=3,maxsize=100,filegrowth=10%)

        log on (name=學生管理數(shù)據(jù)庫_log,filename=’F:/sql/學生管理log.mdf’,size=3,maxsize=100,filegrowth=10%)

        2.2 在此數(shù)據(jù)庫中創(chuàng)建3個表,學生信息表、課程表、成績表

        (1)創(chuàng)建學生信息表。

        Create table student

        (s_no char(8) not null primary key,s_name char(8) not null,s_sex char(2) not null,s_birthday datetime not null)

        (2)創(chuàng)建課程信息表。

        Create table course

        (c_no char(8) not null primary key,c_name charh+KPQbe71Otz0PSA7FCS6Q==(8) not null,c_credit char(2) not null)

        (3)創(chuàng)建成績表。

        Create table score

        (s_no char(8) not null constraint fk_s forgein key(s_no) references student(s_no),

        c_no char(8) not null constraint fk_c forgein key(c_no) references course(c_no),

        sc_score int not null constraint check_sc check(sc_score<=100),

        constraint pk_sc primary key(s_no,c_no)

        在上述三個表的創(chuàng)建中實現(xiàn)了實體完整性,域完整性和引用完整性。例如在成績表與學生信息表中實現(xiàn)了學號(s_no)引用相關性。學生在退學后需要刪除該學生的信息時,應在學生信息表中刪除,由于成績表中可能還有該學生的成績信息,因此必須在學生信息表和成績表中同步刪除信息,同步更新信息。同理,課程表與成績表也要同步更新。否則,表中的數(shù)據(jù)將為無效數(shù)據(jù)。此例中域的完整性是通過檢查約束(check)來實現(xiàn)的,輸入學生成績大于100分的則為非法數(shù)據(jù)。通過這種數(shù)據(jù)完整性約束,可以使數(shù)據(jù)庫中的對個表保持數(shù)據(jù)的一致性。

        3 結語

        數(shù)據(jù)庫中的數(shù)據(jù)完整性為我們更好的使用數(shù)據(jù)庫提供了良好的保障。除了文中介紹的數(shù)據(jù)完整性約束的方法還有之前提到的多種方法,如規(guī)則,觸發(fā)器等。我們要學會融會貫通實體完整性、域完整性、引用完整性和用戶定義完整性,這四種數(shù)據(jù)完整性約束的方法,在不同的情況下利用不同的方法。使我們的數(shù)據(jù)庫更加的完善。

        參考文獻

        [1]何玉潔.數(shù)據(jù)庫管理與編程技術[M].清華大學出版社,2007.

        [2]劉志成.SQL Server 2005實例教程[M].電子工業(yè)出版社,2007.

        无码任你躁久久久久久| 久久久熟女一区二区三区| 色吧噜噜一区二区三区| 国产高清av在线播放| 真人无码作爱免费视频禁hnn | 永久无码在线观看| 在线观看视频日本一区二区三区| 久久精品国产9久久综合| 精品无码一区二区三区爱欲| 欧美大黑帍在线播放| 麻豆变态另类视频在线观看| 东京道一本热码加勒比小泽| 青青草在线这里只有精品| 精品国产免费一区二区三区 | 欧美日韩亚洲一区二区精品| 亚洲国产精品成人av| 极品一区二区在线视频观看| 最近2019年好看中文字幕视频| 免费现黄频在线观看国产 | 久久AV中文综合一区二区| 国产成人精品自拍在线观看| av天堂最新在线播放| 中文字幕乱码亚洲精品一区| 女人与牲口性恔配视频免费| 亚洲a∨好看av高清在线观看| 久久人妻少妇嫩草av蜜桃| 亚洲va韩国va欧美va| 人人添人人澡人人澡人人人人| 久久这里只精品国产2| 日本97色视频日本熟妇视频| 华人免费网站在线观看| 亚洲女初尝黑人巨高清| 成年女人免费v片| 女同性恋一区二区三区四区| 精品综合一区二区三区| 少妇性饥渴bbbbb搡bbbb| 亚洲AⅤ永久无码精品AA| 黄色国产一区在线观看| 大奶白浆视频在线观看| 亚洲av成人一区二区三区| 国产精品27页|