版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三章 SQL語(yǔ)言一、選擇題 1. SQL語(yǔ)言是(B )的語(yǔ)言,容易學(xué)習(xí) 。 A.過(guò)程化 B. 非過(guò)程化 C.格式化 D. 導(dǎo)航式 2. SQL語(yǔ)言的數(shù)據(jù)操縱語(yǔ)句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的語(yǔ)句是(A) 。 A. SELECT B. INSERT C. UPDATE D. DELETE 3. 在視圖上不能完成的操作是( ) 。 A. 更新視圖 B. 查詢 C. 在視圖上定義新的表 D. 在視圖上定義新的視圖 4. SQL語(yǔ)言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,其中,CREATE、DROP、ALTER語(yǔ)句是實(shí)現(xiàn)哪種功
2、能( )。 A. 數(shù)據(jù)查詢 B. 數(shù)據(jù)操縱 C. 數(shù)據(jù)定義 D. 數(shù)據(jù)控制 5. SQL語(yǔ)言中,刪除一個(gè)視圖的命令是( )。 A.DELETE B.DROP C.CLEAR D.REMOVE 6. 在SQL語(yǔ)言中的視圖VIEW是數(shù)據(jù)庫(kù)的( ) 。 A. 外模式 B. 模式 C. 內(nèi)模式 D. 存儲(chǔ)模式 7. 下列的SQL語(yǔ)句中,( )不是數(shù)據(jù)定義語(yǔ)句。 A. CREATE TABLE B. DROP VIEW C. CREATE VIEW D. GRANT 8. 若要撤銷數(shù)據(jù)庫(kù)中已經(jīng)存在的表S,可用( )。 A. DELETE TABLE S B. DELETE S C. DROP TABLE
3、 S D. DROP S 9. 若要在基本表S中增加一列CN(課程名),可用( )。 A.ADD TABLE S(CN CHAR() B.ADD TABLE S ALTER(CN CHAR() C.ALTER TABLE S ADD(CN CHAR() D.ALTER TABLE S (ADD CN CHAR() 10. 學(xué)生關(guān)系模式 S( S,Sname,Sex,Age),S的屬性分別表示學(xué)生的學(xué)號(hào)、姓名、性別、年齡。要在表S中刪除一個(gè)屬性“年齡”,可選用的SQL語(yǔ)句是( )。 A. DELETE Age from S B. ALTER TABLE S DROP Age C. UPDATE
4、S Age D. ALTER TABLE S Age 11. 有關(guān)系S(S,SNAME,SAGE),C(C,CNAME),SC(S,C,GRADE)。其中S是學(xué)生號(hào),SNAME是學(xué)生姓名,SAGE是學(xué)生年齡, C是課程號(hào),CNAME是課程名稱。要查詢選修“ACCESS”課的年齡不小于20的全體學(xué)生姓名的SQL語(yǔ)句是SELECT SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內(nèi)容是( )。 A. S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME=ACCESS B. S.S# = SC.S# and C.C#
5、 = SC.C# and SAGE in>=20 and CNAME in ACCESS C. SAGE in>=20 and CNAME in ACCESS D. SAGE>=20 and CNAME= ACCESS 12. 設(shè)關(guān)系數(shù)據(jù)庫(kù)中一個(gè)表S的結(jié)構(gòu)為S(SN,CN,grade),其中SN為學(xué)生名,CN為課程名,二者均為字符型;grade為成績(jī),數(shù)值型,取值范圍0100。若要把“張二的化學(xué)成績(jī)80分”插入S中,則可用( )。 A. ADD INTO S VALUES(張二,化學(xué),80) B. INSERT INTO S VALUES(張二,化學(xué),80) C. ADD I
6、NTO S VALUES(張二,化學(xué),80) D. INSERT INTO S VALUES(張二,化學(xué),80) 13. 設(shè)關(guān)系數(shù)據(jù)庫(kù)中一個(gè)表S的結(jié)構(gòu)為:S(SN,CN,grade),其中SN為學(xué)生名,CN為課程名,二者均為字符型;grade為成績(jī),數(shù)值型,取值范圍0100。若要更正王二的化學(xué)成績(jī)?yōu)?5分,則可用( ) 。 A. UPDATE S SET grade85 WHERE SN王二 AND CN化學(xué) B. UPDATE S SET grade85 WHERE SN王二 AND CN化學(xué) C. UPDATE grade85 WHERE SN王二 AND CN化學(xué) D. UPDATE g
7、rade85 WHERE SN王二 AND CN化學(xué) 14. 在SQL語(yǔ)言中,子查詢是( ) 。 A. 返回單表中數(shù)據(jù)子集的查詢語(yǔ)言 B. 選取多表中字段子集的查詢語(yǔ)句 C. 選取單表中字段子集的查詢語(yǔ)句 D. 嵌入到另一個(gè)查詢語(yǔ)句之中的查詢語(yǔ)句 15. SQL是一種( )語(yǔ)言。 A. 高級(jí)算法 B. 人工智能 C. 關(guān)系數(shù)據(jù)庫(kù) D. 函數(shù)型 16. 有關(guān)系S(S,SNAME,SEX),C(C,CNAME),SC(S,C,GRADE)。其中S是學(xué)生號(hào),SNAME是學(xué)生姓名,SEX是性別, C是課程號(hào),CNAME是課程名稱。要查詢選修“數(shù)據(jù)庫(kù)”課的全體男生姓名的SQL語(yǔ)句是SELECT SNAM
8、E FROM S,C,SC WHERE子句。這里的WHERE子句的內(nèi)容是( )。 A.S.S# = SC.S# and C.C# = SC.C# and SEX=男 and CNAME=數(shù)據(jù)庫(kù) B.S.S# = SC.S# and C.C# = SC.C# and SEX in男and CNAME in數(shù)據(jù)庫(kù) C.SEX 男 and CNAME 數(shù)據(jù)庫(kù) D.S.SEX=男 and CNAME= 數(shù)據(jù)庫(kù) 17. 若用如下的SQL語(yǔ)句創(chuàng)建了一個(gè)表SC: CREATE TABLE SC (S# CHAR(6) NOT NULL,C# CHAR(3) NOT NULL,SCORE INTEGER,NO
9、TE CHAR(20);向SC表插入如下行時(shí),( )行可以被插入 。 A.(201009,111,60,必修) B.(200823,101,NULL,NULL) C.(NULL,103,80,選修) D.(201132,NULL,86, ) 18. 假設(shè)學(xué)生關(guān)系S(S,SNAME,SEX),課程關(guān)系C(C,CNAME),學(xué)生選課關(guān)系SC(S,C,GRADE)。要查詢選修“Computer”課的男生姓名,將涉及到關(guān)系( )。 A. S B. S,SC C. C,SC D. S,C,SC 二、簡(jiǎn)答題 1. 試述SQL語(yǔ)言的特點(diǎn)。 答: (1)綜合統(tǒng)一。 SQL語(yǔ)言集數(shù)據(jù)定義語(yǔ)言DDL、數(shù)據(jù)操縱語(yǔ)言
10、DML、數(shù)據(jù)控制語(yǔ)言DCL的功能于一體。 (2)高度非過(guò)程化。用SQL語(yǔ)言進(jìn)行數(shù)據(jù)操作,只要提出“做什么”,而無(wú)須指明“怎么做”,因此無(wú)需了解存取路徑,存取路徑的選擇以及SQL語(yǔ)句的操作過(guò)程由系統(tǒng)自動(dòng)完成。 (3)面向集合的操作方式。SQL語(yǔ)言采用集合操作方式,不僅操作對(duì)象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對(duì)象也可以是元組的集合。 (4)以同一種語(yǔ)法結(jié)構(gòu)提供兩種使用方式。SQL語(yǔ)言既是自含式語(yǔ)言,又是嵌入式語(yǔ)言。作為自含式語(yǔ)言,它能夠獨(dú)立地用于聯(lián)機(jī)交互的使用方式,也能夠嵌入到高級(jí)語(yǔ)言程序中,供程序員設(shè)計(jì)程序時(shí)使用。 (5)語(yǔ)言簡(jiǎn)捷,易學(xué)易用。 2. 試述SQL的定義功能
11、。 答: SQL的數(shù)據(jù)定義功能包括定義表、定義視圖和定義索引。 SQL語(yǔ)言使用CREATE TABLE語(yǔ)句定義建立基本表,;ALTER TABLE語(yǔ)句修改基本表定義,DROP TABLE語(yǔ)句刪除基本表;建立索引使用CREATE INDEX語(yǔ)句建立索引, DROP INDEX語(yǔ)句刪除索引表;SQL語(yǔ)言使用CREATE VIEW命令建立視圖,DROP VIEW語(yǔ)句刪除視圖。 3. 用SQL語(yǔ)句建立第3章習(xí)題3中的四個(gè)表。 答: 對(duì)于S表:S( SNO,SNAME,STATUS,CITY); 建S表 CREATE TABLE S (SNO CHAR(3), SNAME CHAR(10), STATU
12、S CHAR(2), CITY CHAR(10); P(PNO,PNAME,COLOR,WEIGHT); 建P表 CREATE TABLE P (PNO CHAR(3), PNAME CHAR(10), COLOR CHAR(4), WEIGHT INT); J(JNO,JNAME,CITY); 建J表 CREATE TABLE J (JNO CHAR(3), JNAME CHAR(10), CITY CHAR(10); SPJ(SNO,PNO,JNO,QTY); 建SPJ表 CREATE TABLE SPJ (SNO CHAR(3), PNO CHAR(3), JNO CHAR(3), QT
13、Y INT); 4. 針對(duì)上題中建立的四個(gè)表試用SQL語(yǔ)言完成第3章習(xí)題3中的查詢。 答: (1) 求供應(yīng)工程J1零件的供應(yīng)商號(hào)碼SNO; SELECT SNO FROM SPJ WHERE JNO=J1; (2) 求供應(yīng)工程J1零件P1的供應(yīng)商號(hào)碼SNO; SELECT SNO FROM SPJ WHERE JNO=J1 AND PNO=P1; (3) 求供應(yīng)工程J1零件為紅色的供應(yīng)商號(hào)碼SNO; SELECT SNO FROM SPJ WHERE JNO=J1 AND PNO IN (SELECT PNO FROM P WHERE COLOR=紅); 或 SELECT SNO FROM S
14、PJ,P WHERE JNO=J1 AND SPJ.PNO=P.PNO AND COLOR=紅; (4) 求沒(méi)有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號(hào)JNO; 解析: 用SQL語(yǔ)言表示如下: SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=天津) AND PNO IN (SELECT PNO FROM P WHERE COLOR=紅); 或 SELECT JNO FROM J WHERE NOT EXISTS (SE
15、LECT *1 FROM SPJ, S, P WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY=天津 AND P. COLOR=紅); 注意:從 J 表入手,以包含那些尚未使用任何零件的工程號(hào)。 (5) 求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號(hào)JNO 。 解析: 用SQL語(yǔ)言表示如下: SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS (SELECT * FROM SPJ SPJX WHERE SNO='S1' AND NOT EXISTS
16、 (SELECT * FROM SPJ SPJY WHERE SPJY.PNO=SPJX.PNO AND SPJY.JNON=SPJZ.JNO AND SPJY.SNO=S1); AND SPJY.SNO='S1' ); 5. 針對(duì)習(xí)題3中的四個(gè)表試用SQL語(yǔ)言完成以下各項(xiàng)操作: (1)找出所有供應(yīng)商的姓名和所在城市。 (2)找出所有零件的名稱、顏色、重量。 (3)找出使用供應(yīng)商S1所供應(yīng)零件的工程號(hào)碼。 (4)找出工程項(xiàng)目J2使用的各種零件的名稱及其數(shù)量。 (5)找出上海廠商供應(yīng)的所有零件號(hào)碼。 (6)找出使用上海產(chǎn)的零件的工程名稱。 (7)找出沒(méi)有使用天津產(chǎn)的零件的工程號(hào)碼
17、。 (8)把全部紅色零件的顏色改成藍(lán)色。 (9)由S5供給J4的零件P6改為由S3供應(yīng),請(qǐng)作必要的修改。 (10)從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 (11)請(qǐng)將 (S2,J6,P4,200) 插入供應(yīng)情況關(guān)系。 答: (1) 找出所有供應(yīng)商的姓名和所在城市。 SELECT SNAME, CITY FROM S; (2) 找出所有零件的名稱、顏色、重量。 SELECT PNAME, COLOR, WEIGHT FROM P; (3) 找出使用供應(yīng)商S1所供應(yīng)零件的工程號(hào)碼。 SELECT JNO FROM SPJ WHERE SNO=S1; (4) 找出工程項(xiàng)目J
18、2使用的各種零件的名稱及其數(shù)量。 SELECT P.PNAME, SPJ.QTY FROM P, SPJ WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2' (5) 找出上海廠商供應(yīng)的所有零件號(hào)碼。 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S WHERE CITY='上海'); (6) 找出使用上海產(chǎn)的零件的工程名稱。 SELECT JNAME FROM J, SPJ, S WHERE J. JNO=SPJ. JNO AND SPJ. SNO=S.SNO AND
19、S.CITY='上海' 或 SELECT JNAME FROM J WHERE JNO IN (SELECT JNO FROM SPJ, S WHERE SPJ. SNO=S.SNO AND S.CITY='上海'); (7) 找出沒(méi)有使用天津產(chǎn)的零件的工程號(hào)碼。 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=天津); 或 SELECT JNO FROM J WHERE NOT E
20、XISTS (SELECT *1 FROM SPJ, S WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=天津); (8) 把全部紅色零件的顏色改成藍(lán)色。 UPDATE P SET COLOR='藍(lán)' WHERE COLOR='紅' ; (9) 由S5供給J4的零件P6改為由S3供應(yīng),請(qǐng)作必要的修改。 UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6' (10) 從供應(yīng)商關(guān)
21、系中刪除S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 DELETE FROM SPJ WHERE SNO='S2' 或 DELETE FROM S WHERE SNO='S2' 解析:注意刪除順序,應(yīng)該先從SPJ表中刪除供應(yīng)商S2所供應(yīng)零件的記錄,然后從從S表中刪除S2。 (11) 請(qǐng)將 (S2,J6,P4,200) 插入供應(yīng)情況關(guān)系。 INSERT INTO SPJ(SNO, JNO, PNO, QTY) VALUES (S2,J6,P4,200); 或 INSERT INTO SPJ VALUES (S2,P4,J6,200); 6. 什么是基本表?什么是
22、視圖??jī)烧叩膮^(qū)別和聯(lián)系是什么? 答:基本表是本身獨(dú)立存在的表,在SQL中一個(gè)關(guān)系就對(duì)應(yīng)一個(gè)表。 視圖是從一個(gè)或幾個(gè)基本表導(dǎo)出的表。視圖本身不獨(dú)立存儲(chǔ)在數(shù)據(jù)庫(kù)中,是一個(gè)虛表。即數(shù)據(jù)庫(kù)中只存放視圖的定義而不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在導(dǎo)出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。 7. 試述視圖的優(yōu)點(diǎn)。 答:(1)視圖能夠簡(jiǎn)化用戶的操作。 (2)視圖使用戶能以多種角度看待同一數(shù)據(jù)。 (3)視圖對(duì)重構(gòu)數(shù)據(jù)庫(kù)提供了一定程度的邏輯獨(dú)立性。 (4)視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)。 8. 所有的視圖是否都可以更新?為什么? 答:不是。視圖是不實(shí)際存儲(chǔ)數(shù)據(jù)的虛表,因此對(duì)視圖的更新,最終要轉(zhuǎn)換為對(duì)基本表的更新。因?yàn)橛行┮晥D的更新不能唯一地有意義地轉(zhuǎn)換成對(duì)相應(yīng)基本表的更新
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 三輪車采購(gòu)合同:2024年新型環(huán)保版版
- 二零二五年度消防員勞務(wù)派遣與消防安全檢查服務(wù)合同
- 2025年度綠色能源項(xiàng)目融資借款合同
- 2025年度版權(quán)合作與虛擬偶像培育合同
- 2025年度股權(quán)收購(gòu)及轉(zhuǎn)讓法律文件制作合同范本3篇
- 南京理工大學(xué)泰州科技學(xué)院《林木遺傳學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京大學(xué)金陵學(xué)院《材料科學(xué)基礎(chǔ)(上)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南昌職業(yè)大學(xué)《聚合過(guò)程與原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 南昌大學(xué)共青學(xué)院《文學(xué)文本解讀》2023-2024學(xué)年第一學(xué)期期末試卷
- 明達(dá)職業(yè)技術(shù)學(xué)院《游泳基礎(chǔ)Ⅰ》2023-2024學(xué)年第一學(xué)期期末試卷
- MOOC 電工學(xué)(電氣工程學(xué)概論)-天津大學(xué) 中國(guó)大學(xué)慕課答案
- 2019級(jí)水電站動(dòng)力設(shè)備專業(yè)三年制人才培養(yǎng)方案
- 室內(nèi)裝飾裝修施工組織設(shè)計(jì)方案
- 洗浴中心活動(dòng)方案
- 送電線路工程施工流程及組織措施
- 肝素誘導(dǎo)的血小板減少癥培訓(xùn)課件
- 韓國(guó)文化特征課件
- 抖音認(rèn)證承諾函
- 清潔劑知識(shí)培訓(xùn)課件
- 新技術(shù)知識(shí)及軍事應(yīng)用教案
- 高等數(shù)學(xué)(第二版)
評(píng)論
0/150
提交評(píng)論