freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新網(wǎng)絡技術和電子商務設計(編輯修改稿)

2024-08-26 06:03 本頁面
 

【文章內(nèi)容簡介】 設A是基本關系R的一個或一組屬性,但不是關系R的主碼,如果A與基本關系S的主碼Ks相對應,則稱A是基本關系R的外碼(foreign key),并稱基本關系R為參照關系(referencing relation),基本關系S為被參照關系(referenced relation)或目標關系(target relation)。關系R和S不一定是不同的關系。顯然,目標關系S的主碼Ks和參照關系的外碼A必須定義在同一個(或一組)域上。在例1中,“學生”關系的“專業(yè)號”屬性與“專業(yè)”關系的主碼“專業(yè)號”相對應,因此“專業(yè)號”屬性是“學生”關系的外碼。這里“專業(yè)”關系為被參照關系,“學生”關系為參照關系。如圖7-7(a)所示。在例2中,“選修”關系的“學號”屬性與“學生”關系的主碼“學號”相對應,“課程號”屬性與“課程”關系的主碼“課程號”相對應,因此“學號”和“課程號”屬性是“選修”關系的外碼。這里“學生”關系和“課程”關系均為被參照關系,“選修”關系為參照關系。如圖7-7(b)所示。學生關系專業(yè)號專業(yè)關系學生關系選修關系課程關系學號課程號(a)(b)圖7—7 關系的參照圖在例3中,“班長”屬性與本關系主碼“學號”屬性相對應,因此“班長”是外碼。這里“學生1”關系既是參照關系也是被參照關系。需要指出的是,外碼并不一定要與相應的主碼同名(如例3)。不過,在實際應用當中,為了便于識別,當外碼與相應的主碼屬于不同關系時,往往給它們?nèi)∠嗤拿?。參照完整性?guī)則就是定義外碼與主碼之間的引用規(guī)則。參照完整性規(guī)則:若屬性(或?qū)傩越M)A是基本關系R的外碼,它與基本關系S的主碼Ks相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在A上的值必須為:①或者取空值(A的每個屬性值均為空值);②或者等于S中某個元組的主碼值。例如,對于例1,“學生”關系中每個元組的專業(yè)號屬性只能取下面兩類值;空值,表示尚未給該學生分配專業(yè);非空值,這時該值必須是“專業(yè)”關系中某個元組的專業(yè)號值,表示該學生不可能分配到一個不存在的專業(yè)中。即被參照關系“專業(yè)”中一定存在一個元組,它的主碼值等于該參照關系“學生”中的外碼值。對于例2,按照參照完整性規(guī)則,學號和課程號屬性也可以取兩類值:空值或目標關系中已經(jīng)存在的值。但由于學號和課程號是“選修”關系中的主屬性,按照實體完整性規(guī)則,它們均不能取空值。所以“選修”關系中的學號和課程號屬性實際上只能取相應被參照關系中已經(jīng)存在的主碼值。參照完整性規(guī)則中,R與S可以是同一個關系。例如,對于例3,按照參照完整性規(guī)則,班長屬性值可以取兩類值空值,表示該學生所在班級尚未選出班長;非空值,這時該值必須是本關系中某個元組的學號值。③用戶定義的完整性(userdefined integrity)實體完整性和參照完整性適用于任何關系數(shù)據(jù)庫系統(tǒng)。用戶定義的完整性是針對某一具體關系數(shù)據(jù)庫的約束條件,它反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求。關系模型應提供定義和檢驗這類完整性的機制,以便用統(tǒng)一的系統(tǒng)方法來處理它們而不是由應用程序承擔這一功能。2. 結構化查詢語言(SQL)結構化查詢語言(structured query language,簡稱SQL)的理論是1974年由Boyce和Chamberlin提出的,并于1975年至1979年在IBM公司的System R上實現(xiàn)。由于它具有功能豐富、使用方式靈活、語言簡潔易學等優(yōu)點,在計算機工業(yè)界和用戶中倍受青睞,很快被廣泛推廣。后來,美國國家標準局(ANSI)和國際標準化組織(ISO)先后批準SQL作為關系數(shù)據(jù)庫語言的美國及國際標準。至此,SQL就成為關系數(shù)據(jù)庫的標準語言,關系數(shù)據(jù)庫系統(tǒng)一般都支持標準SQL語句。所以,盡管當今不同品牌的關系數(shù)據(jù)庫有這樣或那樣的差異,但是人們卻都可以通過標準SQL語句對數(shù)據(jù)庫進行操作,因此,大大減輕了用戶的負擔。⑴ SQL語言的特點SQL語言之所以能夠被用戶和業(yè)界所接受并成為國際標準,是因為它是一個綜合的、通用的、功能極強同時又簡潔易學的語言。SQL語言充分體現(xiàn)了關系數(shù)據(jù)語言的特點和優(yōu)點。其重要特點包括;①SQL是一種一體化的語言,它包括了數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操縱和數(shù)據(jù)控制等功能,可以完成數(shù)據(jù)庫活動中的全部工作。以前的非關系模型(層次模型、網(wǎng)狀模型)的數(shù)據(jù)語言一般都分為存儲模式描述語言、概念模式描述語言、外部模式描述語言和數(shù)據(jù)操縱語言等,這種模型的數(shù)據(jù)語言,一是內(nèi)容多;二是掌握和使用起來都不像SQL那樣簡單和實用。另外,在關系模型中,實體和實體間的聯(lián)系均用關系來表示,這種數(shù)據(jù)結構的單一性帶來了數(shù)據(jù)操作符的統(tǒng)一性,查找、插入、刪除、更新等每一種操作都只需一種操作方式,從而避免了非關系系統(tǒng)由于信息表示方式的多樣性帶來的操作復雜性。②SQL語言是一種高度非過程化的語言,用戶只需提出“做什么”,而不必指明“怎么做”,SQL語言就可以將要求交給系統(tǒng),由系統(tǒng)自動完成全部工作。③SQL語言用一種語法結構提供兩種使用方式:直接以命令方式交互使用,也可以嵌入到程序設計語言中(例如C、Cobol、Fortran、PL/SQL)以程序方式使用。這一種做法為用戶提供了極大的靈活性與方便性?,F(xiàn)在有很多數(shù)據(jù)庫應用開發(fā)工具都將SQL語言直接溶到自身的語言中,如Delphi、Powerbuilder等。這種使用方式為用戶提供了更多的選擇余地。④SQL語言的命令簡潔,易學易用。雖然SQL語言功能極強,但由于設計巧妙,所以只用了為數(shù)不多的幾條命令就完成了所有的核心功能。另外,它的語法也很簡單,很接近自然語言(英語),因此,容易學習和掌握。⑤SQL語言支持數(shù)據(jù)庫的三層模式結構;與概念模式的概念文件對應的是基本表(Table),與存儲模式對應的是存儲文件以及與外部模式對應的是視圖和部分基本表。用戶看到的可以是基本表或視圖,基本表和視圖都是關系,用戶可以在其上進行查詢操作。而存儲文件對用戶來說是透明的。⑵ SQL語言的功能SQL語言是結構化的查詢語言。是一種綜合的、通用的、功能極強的關系數(shù)據(jù)庫語言。它的功能包括:創(chuàng)建數(shù)據(jù)庫對象、操縱對象、往數(shù)據(jù)庫表中填充數(shù)據(jù)、在數(shù)據(jù)表中更新已存在的數(shù)據(jù)、刪除數(shù)據(jù)、執(zhí)行數(shù)據(jù)庫查詢、控制數(shù)據(jù)庫訪問權限和數(shù)據(jù)庫總體管理。主要分以下幾類:①數(shù)據(jù)定義語言——DDL數(shù)據(jù)定義語言(DDL)是SQL的一部分,是SQL中用來生成、修改、刪除關系數(shù)據(jù)庫的表、窗口、模式、目錄等基本要素的語言成分。它允許數(shù)據(jù)庫用戶創(chuàng)建或重新構造數(shù)據(jù)庫對象,如創(chuàng)建或刪除一個數(shù)據(jù)庫表。DDL所包含的要點是:標識所有的表定義每一個表中所含的列給每一個表一個保證唯一的主關鍵字確認在數(shù)據(jù)庫每一個表中至少有一個列是與其他表中的列相同。這些共享的列提供了邏輯上的連接,允許一個表中的信息與另一表中的相應信息相關聯(lián)。將每一個表都用第三范式(3NF)或更好的方法來檢驗,以確保防止插入、刪除、更新非法。數(shù)據(jù)定義語言的功能包括數(shù)據(jù)庫的定義、基本表的定義、視圖的定義、存儲過程的定義、規(guī)則的定義和索引的定義等部分,這些命令包括:CREATE DATABASE——定義數(shù)據(jù)庫ALTER DATABASE——修改數(shù)據(jù)庫DROP DATABASE——刪除數(shù)據(jù)庫CREATE TABALE——定義基本表ALTER TABAL——修改基本表DROP TABAL——刪除基本表CREATE VIEW——定義視圖DROP VIEW——刪除視圖CREATE INDEX——定義存儲模式中的索引DROP INDEX——刪除存儲模式中的索引CREATE PROCEDURE——定義存儲過程DROP PROCEDURE——刪除存儲過程CREATE RULE——定義數(shù)據(jù)庫用戶角色DROP RULE——刪除數(shù)據(jù)庫用戶角色②數(shù)據(jù)操縱語言——DML數(shù)據(jù)操縱語言(DML)是SQL的一部分,在SQL中用來生成、修改、刪除關系數(shù)據(jù)庫結構,但它并不涉及數(shù)據(jù)。DML用于在關系型數(shù)據(jù)庫對象中操縱數(shù)據(jù),主要包括數(shù)據(jù)的插入、更新和刪除三方面的內(nèi)容。主要的DML命令包括:INSERT——數(shù)據(jù)的插入UPDATE——數(shù)據(jù)的更新DELETE——數(shù)據(jù)的刪除③數(shù)據(jù)查詢語言——DQL查詢是對數(shù)據(jù)庫中的信息的尋找和定位。數(shù)據(jù)查詢語言(DQL)盡管值包含了一條命令,但它是數(shù)據(jù)庫的核心操作,是關系型數(shù)據(jù)庫用戶使用SQL的焦點。SQL語言提供了SELECT語句進行數(shù)據(jù)庫的查詢,它包含有許多選項合子句,具有靈活的使用方法和豐富的功能。不論是簡單的還是復雜的查詢,也不論是模糊的還是精確的查詢,都是很容易創(chuàng)建的。④事務控制命令事務控制命令允許用戶管理數(shù)據(jù)庫的事務。以防止數(shù)據(jù)庫的表或元素不被破壞。主要的命令包括:COMMIT——保存數(shù)據(jù)庫中由事務引起的改變;ROLLBACK——撤銷沒保存到數(shù)據(jù)庫中的事務的事務控制命令;GRANT——授權REVOKE——收回授權SAVEPOINT——創(chuàng)建彝族事務中的撤銷點;SET TRANSACTION——給事務命名。3. 關系數(shù)據(jù)的規(guī)范化理論為了使數(shù)據(jù)庫設計的方法走向完備,人們提出了規(guī)范化理論。規(guī)范化可以使關系的結構簡化,更加有規(guī)律,存儲盡量減少冗余,使數(shù)據(jù)庫設計得更為合理。規(guī)范化的目的可以概括為以下幾點:保證庫中每一個分量都不可再分;消除冗余存儲,簡化檢索操作;消除插入異常和刪除異常。⑴ 數(shù)據(jù)依賴規(guī)范化問題考慮的基本出發(fā)點在于一個關系的數(shù)據(jù)項之間存在數(shù)據(jù)依賴問題。它是現(xiàn)實世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)。關系中數(shù)據(jù)項之間存在兩種依賴關系:函數(shù)依賴和多值依賴。函數(shù)依賴:設R(U)是屬性集U上的關系模式。X,Y是U的子集。若對于R(U)的任意一個可能的關系r,r中不可能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記為X→Y。函數(shù)依賴普遍存在于現(xiàn)實生活中,如:對一個學生的描述,描述的屬性有學號、姓名等,在給定學號的情況下,就可以唯一地確定其姓名,不能出現(xiàn)一個學號對應兩個以上姓名的情況,就稱“姓名”函數(shù)依賴“學號”。函數(shù)依賴描述的是屬性之間的單值對應關系,即給定一個關鍵字,就能確定關系模式中的所有屬性,且屬性值是唯一的。在關系模式中函數(shù)依賴可以描述一對一和多對一的關系,但無法描述一對多和多對多的關系。多值依賴:若結定X,有一組屬性值Y與之對應,則稱X多值決定Y或Y多值依賴于X,記為X→→Y。如學生選課,一個學生可以選多門課程,則給定一個學號,就可以找出多門課程與之對應,就稱“課程”多值依賴于“學號”。在設計數(shù)據(jù)庫時,首先應該根據(jù)一個關系所具有的屬性間依賴情況來判定它是否具有某些不合適的性質(zhì)。然后將具有不合適性質(zhì)的關系轉(zhuǎn)換為更合適的形式。⑵ 范式范式是衡量數(shù)據(jù)庫規(guī)范的層次或深度,數(shù)據(jù)庫規(guī)范化層次由范式來決定。根據(jù)關系模式滿足的不同性質(zhì)和規(guī)范化的程度,把關系模式分為第一范式、第二范式、第三范式、BC范式和第四范式等。①第一范式(1NF)如果關系R的所有屬性都是不可再分的數(shù)據(jù)項,則稱該關系屬于第一范式,記作:R∈1NF在任何一個關系數(shù)據(jù)庫系統(tǒng)中,第一范式是對關系模式的一個起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能成為關系數(shù)據(jù)庫。②第二范式(2NF)若關系R∈1NF,且它的每一非主屬性都完全依賴于主鍵,則稱R屬于第二范式,記作:R∈2NF③第三范式(3NF)若關系R∈2NF,且它的每一非主屬性都不傳遞依賴于任何一個鍵,則稱R屬于第三范式,記作:R∈3NF④BC范式(BCNF)通常認為BCNF是修正的第三范式,它比3NF又進了一步。在關系R中,若每一個決定因素都包含鍵,則稱R屬于BC范式,記作:R∈BCNF⑤第四范式(1NF)若關系R∈1NF,如果X→→Y(Y不是X的子集)是非平凡的多值依賴,且X含有鍵,則稱R屬于第四范式,記作:R∈4NF1NF2NF3NFBCNF4NF消除非主屬性對鍵的部分函數(shù)依賴消除非主屬性對鍵的傳遞函數(shù)依賴函數(shù)依賴消除主屬性對鍵的部分和傳遞函數(shù)依賴消除非平凡且非函數(shù)依賴的多值依賴消除決定屬性集非鍵的非平凡函數(shù)依賴↓↓↓↓圖7—8 范式之間的關系范式之間的關系如圖7—8所示: 面向?qū)ο髷?shù)據(jù)庫面向?qū)ο蠹夹g經(jīng)過20幾年的發(fā)展,現(xiàn)己為眾多的軟件開發(fā)者和用戶所接受,許多軟件都使用了面向?qū)ο蟮募夹g,其中包括程序設計語言、用戶界面、數(shù)據(jù)庫和操作系統(tǒng)。面向?qū)ο髷?shù)據(jù)庫就是面向?qū)ο笏枷牒蛿?shù)據(jù)庫技術相結合的產(chǎn)物。在面向?qū)ο蠹夹g和數(shù)據(jù)庫技術相結合的過程中,基本上是沿著兩種途徑發(fā)展的:① 建立在純粹的面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)(OODBMS)上這種途徑往往是以一種面向?qū)ο笳Z言為基礎來增加數(shù)據(jù)庫的功能,主要是支持持久對象和實現(xiàn)數(shù)據(jù)共享。它利用類來描述復雜對象,利用類中封裝的方法來模擬對象的復雜行為,利用繼承性來實現(xiàn)對象的結構和方法的重用。面向?qū)ο髷?shù)據(jù)庫系統(tǒng)在處理多媒體等數(shù)據(jù)類型時可以做到游刃有余,對一些特定應用領域(例如CAD等),也能較好地滿足應用需求,而且在應用系統(tǒng)開發(fā)速度和維護等方面也有著極大的優(yōu)越性。但是,這種純粹的面向?qū)ο髷?shù)據(jù)庫并不支持SQL語言,在通用性方面失去了優(yōu)勢,因而其應用領域受到了很大的局限。② 對傳統(tǒng)的關系數(shù)據(jù)庫加以擴展 在傳統(tǒng)的關系數(shù)據(jù)庫中增加面向?qū)ο蟮奶匦?,把面向?qū)ο蠹夹g與關系數(shù)據(jù)庫結合建立的對象關系數(shù)據(jù)庫管理系統(tǒng)(ORDBMS)這種系統(tǒng)即支持已經(jīng)被廣泛使用的SQL,具有良好的通用性,又具有面向?qū)ο蟮奶匦?,支持復雜對象和復雜對象的復雜行為,是對象技術和傳統(tǒng)關系數(shù)據(jù)庫技術的最佳融合。對象技術和關系技術的優(yōu)點,促使全球數(shù)據(jù)庫
點擊復制文檔內(nèi)容
電大資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1