2025年數(shù)據(jù)庫綜合練習(xí)題及答案_第1頁
2025年數(shù)據(jù)庫綜合練習(xí)題及答案_第2頁
2025年數(shù)據(jù)庫綜合練習(xí)題及答案_第3頁
2025年數(shù)據(jù)庫綜合練習(xí)題及答案_第4頁
2025年數(shù)據(jù)庫綜合練習(xí)題及答案_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

2025年數(shù)據(jù)庫綜合練習(xí)題及答案一、單項(xiàng)選擇題(每題2分,共10分)1.數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)中,描述數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的是()。A.外模式B.模式C.內(nèi)模式D.概念模式2.關(guān)系模型中,候選碼的屬性可以有()。A.0個(gè)B.1個(gè)或多個(gè)C.必須多個(gè)D.至多1個(gè)3.事務(wù)的ACID特性中,“一致性”指的是()。A.事務(wù)執(zhí)行后數(shù)據(jù)庫處于合法狀態(tài)B.事務(wù)一旦提交不可撤銷C.多個(gè)事務(wù)互不干擾D.事務(wù)在執(zhí)行過程中不可中斷4.以下哪種索引類型最適合范圍查詢(如查詢年齡在20-30歲之間的用戶)?()A.哈希索引B.B+樹索引C.全文索引D.空間索引5.MongoDB屬于哪種類型的NoSQL數(shù)據(jù)庫?()A.鍵值存儲B.文檔存儲C.列族存儲D.圖存儲二、簡答題(每題5分,共20分)1.簡述關(guān)系數(shù)據(jù)庫中“實(shí)體完整性”和“參照完整性”的區(qū)別,并各舉一例說明。2.事務(wù)的隔離級別有哪些?分別說明每種隔離級別可能引發(fā)的并發(fā)問題。3.索引優(yōu)化是數(shù)據(jù)庫性能調(diào)優(yōu)的重要手段,簡述創(chuàng)建索引的基本原則(至少列出4條)。4.對比關(guān)系數(shù)據(jù)庫與NoSQL數(shù)據(jù)庫的適用場景,各舉2個(gè)典型應(yīng)用場景。三、關(guān)系數(shù)據(jù)庫設(shè)計(jì)題(每題10分,共20分)題目1:某高校需設(shè)計(jì)學(xué)生選課管理系統(tǒng),涉及的實(shí)體有:-學(xué)生(屬性:學(xué)號Sno,姓名Sname,性別Ssex,年齡Sage,所在系Sdept)-課程(屬性:課程號Cno,課程名Cname,先修課號Cpno,學(xué)分Ccredit)-教師(屬性:教師號Tno,姓名Tname,職稱Title,所屬系Tdept)-授課(教師為學(xué)生授課,屬性:授課時(shí)間Time,地點(diǎn)Location)要求:(1)繪制該系統(tǒng)的ER圖(需標(biāo)注實(shí)體、屬性、聯(lián)系及聯(lián)系類型);(2)將ER圖轉(zhuǎn)換為關(guān)系模式,并指出每個(gè)關(guān)系模式的主碼和外碼(若存在)。題目2:現(xiàn)有關(guān)系模式R(A,B,C,D,E),函數(shù)依賴集F={AB→C,C→D,D→E,E→A}。(1)求R的候選碼;(2)判斷R是否屬于3NF,若不屬于,分解R為3NF。四、SQL編程題(每題8分,共40分)題目1:基于以下數(shù)據(jù)表結(jié)構(gòu),完成查詢:-學(xué)生表S(SnoCHAR(8),SnameVARCHAR(20),SsexCHAR(2),SageINT,SdeptVARCHAR(20))-課程表C(CnoCHAR(4),CnameVARCHAR(30),CpnoCHAR(4),CcreditINT)-成績表SC(SnoCHAR(8),CnoCHAR(4),GradeINT)(1)查詢“計(jì)算機(jī)系”(Sdept='計(jì)算機(jī)系')所有學(xué)生的學(xué)號、姓名及年齡,按年齡降序排列;(2)查詢選修了課程號為“C001”且成績高于85分的學(xué)生姓名(要求用子查詢實(shí)現(xiàn));(3)統(tǒng)計(jì)每門課程的選修人數(shù)及平均成績(結(jié)果包含課程號、課程名、選修人數(shù)、平均成績);(4)查詢所有學(xué)生的學(xué)號、姓名、課程名及成績(未選修課程的學(xué)生也需顯示);(5)使用窗口函數(shù)查詢每個(gè)學(xué)生的成績排名(按課程分組,成績降序)。題目2:某公司員工表EMP(EnoCHAR(6),EnameVARCHAR(20),SalaryINT,DnoCHAR(2)),部門表DEPT(DnoCHAR(2),DnameVARCHAR(20),ManagerCHAR(6))。(1)為EMP表添加“入職時(shí)間”字段(HireDateDATE);(2)將“研發(fā)部”(Dname='研發(fā)部')所有員工的工資增加10%;(3)創(chuàng)建視圖V_DeptAvg,顯示各部門的部門號、部門名及平均工資;(4)刪除部門號為“D05”的部門(需處理外鍵約束);(5)使用CTE(公共表表達(dá)式)查詢工資高于所在部門平均工資的員工信息。五、綜合應(yīng)用題(每題15分,共30分)題目1:某電商平臺訂單數(shù)據(jù)庫存在性能問題,慢查詢?nèi)罩撅@示以下SQL語句執(zhí)行時(shí)間過長:```sqlSELECTu.user_name,o.order_id,o.order_time,SUM(oi.quantityp.price)AStotal_amountFROMusersuLEFTJOINordersoONu.user_id=o.user_idLEFTJOINorder_itemsoiONo.order_id=oi.order_idLEFTJOINproductspONduct_id=duct_idWHEREo.order_timeBETWEEN'2024-01-01'AND'2024-12-31'GROUPBYu.user_id,o.order_id,o.order_timeHAVINGtotal_amount>1000;```(1)分析該查詢可能存在的性能瓶頸;(2)提出優(yōu)化方案(至少3條),并說明理由。題目2:某銀行核心系統(tǒng)需設(shè)計(jì)數(shù)據(jù)庫安全方案,要求:(1)實(shí)現(xiàn)不同角色(柜員、主管、系統(tǒng)管理員)的權(quán)限控制;(2)保護(hù)客戶敏感信息(如身份證號、銀行卡號)的存儲安全;(3)制定數(shù)據(jù)庫備份與恢復(fù)策略,確保數(shù)據(jù)可恢復(fù)性。請針對以上需求設(shè)計(jì)具體實(shí)現(xiàn)方案。參考答案一、單項(xiàng)選擇題1.C2.B3.A4.B5.B二、簡答題1.區(qū)別:實(shí)體完整性要求主碼的屬性值非空且唯一(如學(xué)生表中學(xué)號Sno為主碼,不能重復(fù)或?yàn)榭眨?;參照完整性要求外碼的值要么為空,要么等于被參照關(guān)系主碼的值(如成績表SC的Sno是外碼,必須存在于學(xué)生表S的Sno中)。2.隔離級別:-讀未提交(ReadUncommitted):可能引發(fā)臟讀(讀取未提交的修改);-讀已提交(ReadCommitted):解決臟讀,但可能引發(fā)不可重復(fù)讀(同一事務(wù)內(nèi)兩次讀取結(jié)果不同);-可重復(fù)讀(RepeatableRead):解決不可重復(fù)讀,但可能引發(fā)幻讀(同一事務(wù)內(nèi)新增數(shù)據(jù)導(dǎo)致結(jié)果集變化);-串行化(Serializable):最高隔離級別,無并發(fā)問題,但性能最差。3.索引創(chuàng)建原則:-為高頻查詢的字段(如WHERE、JOIN、ORDERBY中的字段)創(chuàng)建索引;-避免為低基數(shù)列(如性別字段,僅“男”“女”)創(chuàng)建索引;-索引字段長度越短越好(減少存儲和查詢開銷);-組合索引遵循“最左匹配”原則(如索引(A,B,C)可用于A、A+B、A+B+C的查詢);-避免在頻繁更新的表上創(chuàng)建過多索引(索引會(huì)影響寫操作性能)。4.適用場景對比:-關(guān)系數(shù)據(jù)庫:需要強(qiáng)事務(wù)一致性(如銀行轉(zhuǎn)賬)、復(fù)雜關(guān)聯(lián)查詢(如訂單-用戶-商品多表連接);-NoSQL數(shù)據(jù)庫:高并發(fā)讀寫(如電商秒殺活動(dòng)的緩存)、非結(jié)構(gòu)化數(shù)據(jù)存儲(如用戶評論的JSON數(shù)據(jù))。三、關(guān)系數(shù)據(jù)庫設(shè)計(jì)題題目1:(1)ER圖設(shè)計(jì):-實(shí)體:學(xué)生(Sno為主碼)、課程(Cno為主碼)、教師(Tno為主碼);-聯(lián)系:學(xué)生與課程之間是“選修”(多對多,M:N);教師與課程之間是“授課”(多對多,M:N);教師與學(xué)生之間通過“授課”聯(lián)系(多對多,M:N)。(2)關(guān)系模式轉(zhuǎn)換:-學(xué)生S(Sno,Sname,Ssex,Sage,Sdept),主碼Sno;-課程C(Cno,Cname,Cpno,Ccredit),主碼Cno,外碼Cpno(參照C.Cno);-教師T(Tno,Tname,Title,Tdept),主碼Tno;-選修SC(Sno,Cno),主碼(Sno,Cno),外碼Sno(參照S.Sno),外碼Cno(參照C.Cno);-授課TC(Tno,Cno,Time,Location),主碼(Tno,Cno,Time),外碼Tno(參照T.Tno),外碼Cno(參照C.Cno)。題目2:(1)候選碼推導(dǎo):-函數(shù)依賴F={AB→C,C→D,D→E,E→A};-AB的閉包:AB+=AB→C→D→E→A→AB(閉包包含所有屬性),因此AB是候選碼。(2)3NF判斷與分解:-R中存在傳遞依賴(AB→C→D→E→A),因此不滿足3NF;-分解為:R1(AB,C)(AB→C),R2(C,D)(C→D),R3(D,E)(D→E),R4(E,A)(E→A)。四、SQL編程題題目1:(1)```sqlSELECTSno,Sname,SageFROMSWHERESdept='計(jì)算機(jī)系'ORDERBYSageDESC;```(2)```sqlSELECTSnameFROMSWHERESnoIN(SELECTSnoFROMSCWHERECno='C001'ANDGrade>85);```(3)```sqlSELECTC.Cno,C.Cname,COUNT(SC.Sno)AS選修人數(shù),AVG(SC.Grade)AS平均成績FROMCLEFTJOINSCONC.Cno=SC.CnoGROUPBYC.Cno,C.Cname;```(4)```sqlSELECTS.Sno,S.Sname,C.Cname,SC.GradeFROMSLEFTJOINSCONS.Sno=SC.SnoLEFTJOINCONSC.Cno=C.Cno;```(5)```sqlSELECTSno,Cno,Grade,ROW_NUMBER()OVER(PARTITIONBYCnoORDERBYGradeDESC)AS排名FROMSC;```題目2:(1)```sqlALTERTABLEEMPADDHireDateDATE;```(2)```sqlUPDATEEMPSETSalary=Salary1.1WHEREDno=(SELECTDnoFROMDEPTWHEREDname='研發(fā)部');```(3)```sqlCREATEVIEWV_DeptAvgASSELECTD.Dno,D.Dname,AVG(E.Salary)ASAvgSalaryFROMDEPTDLEFTJOINEMPEOND.Dno=E.DnoGROUPBYD.Dno,D.Dname;```(4)```sql--先刪除EMP表中Dno='D05'的記錄(或設(shè)置外鍵為級聯(lián)刪除)DELETEFROMEMPWHEREDno='D05';DELETEFROMDEPTWHEREDno='D05';```(5)```sqlWITHDeptAvgAS(SELECTDno,AVG(Salary)ASAvgSalaryFROMEMPGROUPBYDno)SELECTE.FROMEMPEJOINDeptAvgDAONE.Dno=DA.DnoWHEREE.Salary>DA.AvgSalary;```五、綜合應(yīng)用題題目1:(1)性能瓶頸分析:-多表JOIN(users-orders-order_items-products)導(dǎo)致連接開銷大;-WHERE子句對order_time的范圍查詢可能未使用索引;-GROUPBY包含多個(gè)字段(u.user_id,o.order_id,o.order_time),聚合計(jì)算復(fù)雜;-HAVING子句引用別名total_amount,可能導(dǎo)致額外掃描。(2)優(yōu)化方案:-為orders表的order_time字段創(chuàng)建索引(B+樹索引),加速時(shí)間范圍查詢;-為order_items表的order_id和product_id字段創(chuàng)建復(fù)合索引,優(yōu)化與orders、products的連接;-簡化GROUPBY字段(僅保留o.order_id,因order_id唯一標(biāo)識訂單);-將HAVING子句改為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論