【正文】
找出沒有使用天津產(chǎn)的零件的工程號碼。SELECT JNAME FROM SPJ,S,JWHERE = AND =39。上海39。(5)找出上海廠商供應(yīng)的所有零件號碼。SELECT PNAME,QTY FROM SPJ,P WHERE = AND =39。S139。SELECT PNAME,COLOR,WEIGHT FROM P(3)找出使用供應(yīng)商S1所供應(yīng)零件的工程號碼。 AND NOT EXISITS(SELECT * FROM SPJ Z WHERE = AND =))5.針對習(xí)題3中的四個(gè)表試用SQL語言完成以下各項(xiàng)操作:(1)找出所有供應(yīng)商的姓名和所在城市。SELECT JNO FROM SPJ X WHERE NOT EXISITS(SELECT * FROM SPJ Y WHERE SNO=39。 AND = AND = AND =)。 AND COLOR=39?;騍ELECT JNO FROM J WHERE NOT EXISITS (SELECT * FROM SPJ,P,S WHERE =39。紅39。天津39。( 4 )求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號 JNO 。 AND = AND COLOR=39。 SELECT SNO FROM SPJ,P WHERE JNO=39。P139。J139。SELECT DIST SNO FROM SPJ WHERE JNO=’J1’ ( 2 )求供應(yīng)工程 Jl 零件 Pl 的供應(yīng)商號碼 SNO 。第3章 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL 4 個(gè)表試用 SQL 語言完成第二章習(xí)題 5 中的查詢。它是從關(guān)系R與S的廣義笛卡爾積中選取A,B屬性值相等的那些元組。 πPno(σSno=‘S1‘ (SPJ))6.試述等值連接與自然連接的區(qū)別和聯(lián)系。即屬性F本身不是主屬性,則可以取空值,否則不能取空值。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?答:實(shí)體完整性規(guī)則是指若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。數(shù)據(jù)庫管理系統(tǒng)在三級模式之間提供的兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡稱數(shù)據(jù)的邏輯獨(dú)立性。數(shù)據(jù)與程序的物理獨(dú)立性是指用戶的的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。數(shù)據(jù)庫系統(tǒng)在這三級模式之間提供了兩層映像:外模式/模式映像和模式/內(nèi)模式映像,這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。內(nèi)模式,亦稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)內(nèi)部的表示,即對數(shù)據(jù)的物理結(jié)構(gòu)和存儲方式的描述。模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu)。 外模式,亦稱子模式或用戶模式,是數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。 聯(lián)系組成、制造、 儲存、存放都有屬性:數(shù)量。請用 E 一 R 圖畫出此工廠產(chǎn)品、零件、材料、倉庫的概念模型。這些零件由不同的原材料制成,不同零件所用的材料可以相同。各實(shí)體需要有屬性說明,需要畫出各實(shí)體的圖(帶屬性)或在下圖中直接添加實(shí)體的屬性,比如:學(xué)生的屬性包括學(xué)號、姓名、性別、身高、聯(lián)系方式等,此略。請用 E 一 R 圖畫出此學(xué)校的概念模型。概念模型用于信息世界的建模,是現(xiàn)實(shí)世界到信息世界的第一層抽象,是數(shù)據(jù)庫設(shè)計(jì)人員進(jìn)行數(shù)據(jù)庫設(shè)計(jì)的有力工具,也是數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言。8 .試述概念模型的作用。第1章 緒論2 .使用數(shù)據(jù)庫系統(tǒng)有什么好處?答:使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)是很多的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗余,提高數(shù)據(jù)的利用率和一致性,又有利于應(yīng)用程序的開發(fā)和維護(hù)。6 .?dāng)?shù)據(jù)庫管理系統(tǒng)的主要功能有哪些?答:( l )數(shù)據(jù)庫定義功能; ( 2 )數(shù)據(jù)存取功能; ( 3 )數(shù)據(jù)庫運(yùn)行管理; ( 4 )數(shù)據(jù)庫的建立和維護(hù)功能。答:概念模型實(shí)際上是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次。12 .學(xué)校中有若干系,每個(gè)系有若干班級和教研室,每個(gè)教研室有若干教員,其中有的教授和副教授每人各帶若干研究生;每個(gè)班有若干學(xué)生,每個(gè)學(xué)生選修若干課程,每門課可由若干學(xué)生選修。答: 實(shí)體間聯(lián)系如下圖所示,聯(lián)系-選修有一個(gè)屬性:成績。 13 .某工廠生產(chǎn)若干產(chǎn)品,每種產(chǎn)品由不同的零件組成,有的零件可用在不同的產(chǎn)品上。這些零件按所屬的不同產(chǎn)品分別放在倉庫中,原材料按照類別放在若干倉庫中。答:各實(shí)體需要有屬性,此略。 20 .試述數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu),這種結(jié)構(gòu)的優(yōu)點(diǎn)是什么?答:數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式和內(nèi)模式組成。模式,亦稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。外模式涉及的是數(shù)據(jù)的局部邏輯結(jié)構(gòu),通常是模式的子集。數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)的三個(gè)抽象級別,它把數(shù)據(jù)的具體組織留給 DBMs 管理,使用戶能邏輯抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計(jì)算機(jī)中的表示和存儲。22 .什么叫數(shù)據(jù)與程序的物理獨(dú)立性?什么叫數(shù)據(jù)與程序的邏輯獨(dú)立性?為什么數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)與程序的獨(dú)立性?答:數(shù)據(jù)與程序的邏輯獨(dú)立性是指用戶的的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。當(dāng)模式改變時(shí)(例如增加新的關(guān)系、新的屬性、改變屬性的數(shù)據(jù)類型等),由數(shù)據(jù)庫管理員對各個(gè)外模式/模式的映像做相應(yīng)改變,可以使外模式保持不變。當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)改變了,由數(shù)據(jù)庫管理員對模式/內(nèi)模式映像做相應(yīng)改變,可以使模式保持不變,從而應(yīng)用程序也不必改變,保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡稱數(shù)據(jù)的物理獨(dú)立性。 第2章 關(guān)系數(shù)據(jù)庫4 .試述關(guān)系模型的完整性規(guī)則。若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個(gè)元組在F上的值必須為:或者取空值(F的每個(gè)屬性值均為空值);或者等于S中某個(gè)元組的主碼值。5.設(shè)有一個(gè)SPJ數(shù)據(jù)庫,包括S,P,J,SPJ四個(gè)關(guān)系模式:1)求供應(yīng)工程J1零件的供應(yīng)商號碼SNO:πSno(σSno=‘J1’(SPJ))2)求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO:πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))3)求供應(yīng)工程J1零件為紅色的供應(yīng)商號碼SNO:πSno(σPno=‘P1‘ (σCOLOR=’紅‘ (P)∞SPJ))4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO:πJno(SPJ) πJNO(σcity=‘天津’∧Color=‘紅‘ (S∞SPJ∞P)5)求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO:πJno,Pno(SPJ)247。答: 連接運(yùn)算符是“=”的連接運(yùn)算稱為等值連接。自然連接是一種特殊的等值連接,它要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,并且在結(jié)果中把重復(fù)的屬性列去掉。 ( l )求供應(yīng)工程 Jl 零件的供應(yīng)商號碼 SNO 。 SELECT DIST SNO FROM SPJ WHERE JNO=39。 AND PNO=39。( 3 )求供應(yīng)工程 Jl 零件為紅色的供應(yīng)商號碼 SNO 。J139。紅39。SELECT JNO FROM J WHERE JNO NOT IN (SELECT JNO FROM SPJ,P,S WHERE =39。 AND COLOR=39。 AND = AND =)。天津39。紅39。( 5 )求至少用了供應(yīng)商 Sl 所供應(yīng)的全部零件的工程號 JNO 。S139。 SELECT SNAME,CITY FROM S(2)找出所有零件的名稱、顏色、重量。 SELECT DIST JNO FROM SPJ WHERE SNO=39。(4)找出工程項(xiàng)目J2使用的各種零件的名稱及其數(shù)量。J239。SELECT PNO FROM SPJ,S WHERE = AND CITY=39。(6) 找出使用上海產(chǎn)的零件的工程名稱。上海39。類似上題中的第(4) 小題。SELECT DISTINCT JNO FROM J WHERE JNO NOT IN (SELECT DIST JNO FROM SPJ,S WHERE = AND =39。)或 SELECT DISTINCT JNO FROM J WHERE NOT EXISITS (SELECT * FROM SPJ,S ,J WHERE = AND =39。 AND =.JNO) (8)把全部紅色零件的顏色改成藍(lán)色。藍(lán)39。紅39。 UPDATE SPJ SET SNO=39。 WHERE SNO=39。 AND JNO=39。 AND PNO=39。(10)從供應(yīng)商關(guān)系中刪除供應(yīng)商號是S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 INSERT INTO SPJ VALUES(‘S2’,‘J6’,‘P4’,200)6 .什么是基本表?什么是視圖?兩者的區(qū)別和聯(lián)系是什么?答 基本表是本身獨(dú)立存在的表,在 SQL 中一個(gè)關(guān)系就對應(yīng)一個(gè)表。視圖本身不獨(dú)立存儲在數(shù)據(jù)庫中,是一個(gè)虛表。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。答 ( l )視圖能夠簡化用戶的操作; ( 2 )視圖使用戶能以多種角度看待同一數(shù)據(jù); ( 3 )視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性; ( 4 )視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)。11.請為三建工程項(xiàng)目建立一個(gè)供應(yīng)情況的視圖,包括供應(yīng)商代碼(SNO)、零件代碼(PNO)、供應(yīng)數(shù)量(QTY)。三建39。SELECT DIST PNO,QTY FROM VSP(2)找出供應(yīng)商S1的供應(yīng)情況。S139。5 .試述實(shí)現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)。( 3 )視圖機(jī)制。( 5 )數(shù)據(jù)加密。當(dāng)用戶對數(shù)據(jù)庫訪問時(shí)首先檢查用戶的存取權(quán)限。強(qiáng)制存取控制方法:每一個(gè)數(shù)據(jù)對象被(強(qiáng)制地)標(biāo)以一定的密級,每一個(gè)用戶也被(強(qiáng)制地)授予某一個(gè)級別的許可證。8.用SQL的GRANT 和REVOKE語句(加上視圖機(jī)制)完成以下授權(quán)定義或存取控制功能:( a )用戶王明對兩個(gè)表有SELECT 權(quán)力。 GRANT INSERT,DELETE ON 職工,部門 TO 李勇( c ) 每個(gè)職工只對自己的記錄有SELECT 權(quán)力。( d )用戶劉星對職工表有SELECT 權(quán)力,對工資字段具有更新權(quán)力。 GRANT ALTER TABLE ON 職工,部門 TO 張新。 GRANT ALL PRIVILIGES ON 職工,部門 TO 周平 WITH GRANT OPTION。 CREATE VIEW 部門工資 AS SELECT ,MAX(工資),MIN(工資),AVG(工資) FROM 職工,部門 WHERE = GROUP BY GRANT SELECT ON 部門工資 TO 楊蘭。(4) REVOKE SELECT , UPDATE ON 職工FROM 劉星;(5) REVOKE ALTER TABLE ON 職工,部門FROM 張新;(6) REVOKE ALL PRIVILIGES ON 職工,部門FROM 周平;(7) REVOKE SELECT ON 部門工資FROM 楊蘭;DROP VIEW 部門工資;13 .什么是數(shù)據(jù)庫的審計(jì)功能,為什么要提供審計(jì)功能?答: 審計(jì)功能是指DBMS 的審計(jì)模塊在用戶對數(shù)據(jù)庫執(zhí)行操作的同時(shí)把所有操作自動(dòng)記錄到系統(tǒng)的審計(jì)日志中。利用數(shù)據(jù)庫的審計(jì)功能,DBA 可以根據(jù)審計(jì)跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時(shí)間和內(nèi)容等。但是,人們可以從合法的查詢中推導(dǎo)出不合法的信息,即可能存在隱蔽的信息通道,這是統(tǒng)計(jì)數(shù)據(jù)庫要研究和解決的特殊的安全性問題。2 .?dāng)?shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的安全性概念有什么區(qū)別和聯(lián)系?答:數(shù)據(jù)的完整性和安全性是兩個(gè)不同的概念,但是有一定的聯(lián)系。后者是保護(hù)數(shù)據(jù)庫防止惡意的