


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、SQL語(yǔ)句練習(xí)題SQL語(yǔ)言一、選擇題1. SQL語(yǔ)言是( )的語(yǔ)言,容易學(xué)習(xí) 。A.過(guò)程化 B. 非過(guò)程化C.格式化 D. 導(dǎo)航式2. SQL語(yǔ)言的數(shù)據(jù)操縱語(yǔ)句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的語(yǔ)句是( ) 。A. SELECT B. INSERTC. UPDATE D. DELETE3. 在視圖上不能完成的操作是( ) 。A. 更新視圖 B. 查詢C. 在視圖上定義新的表 D. 在視圖上定義新的視圖4. SQL語(yǔ)言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,其中,CREATE、DROP、ALTER語(yǔ)句是實(shí)現(xiàn)哪種功能( )。A.
2、 數(shù)據(jù)查詢 B. 數(shù)據(jù)操縱C. 數(shù)據(jù)定義 D. 數(shù)據(jù)控制5. SQL語(yǔ)言中,刪除一個(gè)視圖的命令是( )。A.DELETE B.DROPC.CLEARD.REMOVE6. 在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. GRANT8. 若要撤銷數(shù)據(jù)庫(kù)中已經(jīng)存在的表S,可用( )。A. DELETE TABLE S B. DELETE SC. DROP TABLE S D. DROP S9. 若要在基本
3、表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 S Age D. ALTER TABLE S Age1
4、1. 有關(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=ACCESSB. S.S# = SC.S# and C.C# = SC.C# and SAGE in=20 and CNAME
5、in ACCESSC. SAGE in=20 and CNAME in ACCESSD. SAGE=20 and CNAME= ACCESS12. 設(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 SVALUES(張二,化學(xué),80)B. INSERT INTO SVALUES(張二,化學(xué),80)C. ADD INTO SVALUES(張二,化學(xué),80)D. INSERT INTO SVALUES(張二,化學(xué),80)1
6、3. 設(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 SSET grade85WHERE SN王二 AND CN化學(xué) B. UPDATE SSET grade85WHERE SN王二 AND CN化學(xué) C. UPDATE grade85WHERE SN王二 AND CN化學(xué) D. UPDATE grade85WHERE SN王二 AND CN化學(xué)14. 在SQL語(yǔ)言中,子查詢是( ) 。A. 返回單表中數(shù)據(jù)子集的查詢語(yǔ)言B
7、. 選取多表中字段子集的查詢語(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 SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內(nèi)容是( )。A.S.S# = SC.S# and C.C# = SC.C#
8、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,NOTE CHAR(20);向SC表插入如下行時(shí),( )行可以被插入 。A.(201009,111,60,必修)B.(200823,101,NULL,NULL)
9、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選擇題答案:(1) B (2) A (3) C (4) C (5) B(6) A (7) D (8) C (9) C (10) B(11) A (12) D (13) A (14) D (15) C(16) A (17) B (18) D 二、簡(jiǎn)答題1. 試述SQL語(yǔ)言的特點(diǎn)。答
10、:(1)綜合統(tǒng)一。 SQL語(yǔ)言集數(shù)據(jù)定義語(yǔ)言DDL、數(shù)據(jù)操縱語(yǔ)言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í)使用
11、。(5)語(yǔ)言簡(jiǎn)捷,易學(xué)易用。2. 試述SQL的定義功能。答: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),SNAM
12、E CHAR(10),STATUS 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),QTY INT
13、);4. 針對(duì)上題中建立的四個(gè)表試用SQL語(yǔ)言完成第3章習(xí)題3中的查詢。答:(1) 求供應(yīng)工程J1零件的供應(yīng)商號(hào)碼SNO;SELECT SNOFROM SPJWHERE JNO=J1;(2) 求供應(yīng)工程J1零件P1的供應(yīng)商號(hào)碼SNO;SELECT SNOFROM SPJWHERE JNO=J1AND PNO=P1;(3) 求供應(yīng)工程J1零件為紅色的供應(yīng)商號(hào)碼SNO;SELECT SNO FROM SPJWHERE JNO=J1AND PNO IN (SELECT PNOFROM P WHERE COLOR=紅);或SELECT SNOFROM SPJ,P WHERE JNO=J1 AND SP
14、J.PNO=P.PNOAND COLOR=紅;(4) 求沒(méi)有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號(hào)JNO;解析:用SQL語(yǔ)言表示如下:SELECT JNOFROM JWHERE NOT EXISTS(SELECT *FROM SPJWHERE SPJ.JNO=J.JNOAND SNO IN(SELECT SNOFROM SWHERE CITY=天津)AND PNO IN (SELECT PNOFROM PWHERE COLOR=紅);或SELECT JNOFROM JWHERE NOT EXISTS(SELECT *1FROM SPJ, S, PWHERE SPJ.JNO=J.JNOAND SP
15、J.SNO=S.SNOAND SPJ.PNO=P.PNOAND S.CITY=天津AND P. COLOR=紅);注意:從 J 表入手,以包含那些尚未使用任何零件的工程號(hào)。(5) 求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號(hào)JNO 。解析:用SQL語(yǔ)言表示如下:SELECT DISTINCT JNOFROM SPJ SPJZWHERE NOT EXISTS (SELECT * FROM SPJ SPJX WHERE SNO=S1AND NOT EXISTS(SELECT *FROM SPJ SPJYWHERE SPJY.PNO=SPJX.PNO AND SPJY.JNON=SPJZ.JNOAN
16、D 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)碼。(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)將
17、 (S2,J6,P4,200) 插入供應(yīng)情況關(guān)系。 答:(1) 找出所有供應(yīng)商的姓名和所在城市。SELECT SNAME, CITYFROM S;(2) 找出所有零件的名稱、顏色、重量。SELECT PNAME, COLOR, WEIGHTFROM P;(3) 找出使用供應(yīng)商S1所供應(yīng)零件的工程號(hào)碼。SELECT JNOFROM SPJWHERE SNO=S1;(4) 找出工程項(xiàng)目J2使用的各種零件的名稱及其數(shù)量。SELECT P.PNAME, SPJ.QTYFROM P, SPJWHERE P.PNO=SPJ.PNOAND SPJ.JNO=J2;(5) 找出上海廠商供應(yīng)的所有零件號(hào)碼。SEL
18、ECT DISTINCT PNOFROM SPJWHERE SNO IN(SELECT SNOFROM SWHERE CITY=上海);(6) 找出使用上海產(chǎn)的零件的工程名稱。SELECT JNAMEFROM J, SPJ, SWHERE J. JNO=SPJ. JNOAND SPJ. SNO=S.SNOAND S.CITY=上海;或SELECT JNAMEFROM JWHERE JNO IN (SELECT JNOFROM SPJ, SWHERE SPJ. SNO=S.SNOAND S.CITY=上海);(7) 找出沒(méi)有使用天津產(chǎn)的零件的工程號(hào)碼。SELECT JNOFROM JWHERE
19、NOT EXISTS(SELECT *FROM SPJWHERE SPJ.JNO=J.JNO AND SNO IN(SELECT SNOFROM SWHERE CITY=天津);或SELECT JNOFROM JWHERE NOT EXISTS(SELECT *1FROM SPJ, SWHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=天津);(8) 把全部紅色零件的顏色改成藍(lán)色。UPDATE PSET COLOR=藍(lán)WHERE COLOR=紅 ;(9) 由S5供給J4的零件P6改為由S3供應(yīng),請(qǐng)作必要的修改。UPDATE SPJSET SNO=S
20、3WHERE SNO=S5 AND JNO=J4 AND PNO=P6;(10) 從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。DELETE FROM SPJWHERE SNO=S2;或DELETE FROM SWHERE 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,J
21、6,200);6. 什么是基本表?什么是視圖??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的更新不能唯一地有
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 出口合同范本格式
- Unit 7 Be Wise with Money Period 3 Grammar 教學(xué)設(shè)計(jì) 2024-2025學(xué)年譯林版(2024)七年級(jí)英語(yǔ)上冊(cè)
- 勞務(wù)發(fā)包合同范本
- 動(dòng)物投放景區(qū)合同范本
- 農(nóng)村菜田出租合同范本
- 出租養(yǎng)殖雞場(chǎng)合同范本
- 加工定制窗簾合同范本
- 保潔商場(chǎng)合同范本
- 包地收款合同范本
- 勞務(wù)中介代理招聘合同范本
- 《發(fā)展?jié)h語(yǔ)(第二版)中級(jí)綜合(Ⅱ)》第10課+課件
- 考研英語(yǔ)大綱詞匯(完美打印版)
- GB/T 29587-2013松皰銹病菌檢疫鑒定方法
- 部門(單位)培訓(xùn)申請(qǐng)表
- 項(xiàng)目變更管理表excel模板
- 設(shè)計(jì)管理資料課件
- “春季傳染病預(yù)防”班會(huì)全文PPT
- 《涉外禮儀教程(第五版)》課件第一章 涉外通則
- 農(nóng)藥殘留檢測(cè)技術(shù)課件
- 服裝造型點(diǎn)線面課件
- 化工裝置安全試車工作規(guī)范附件解讀教材課件
評(píng)論
0/150
提交評(píng)論