




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
這里是幅標(biāo)題這里是副標(biāo)題
數(shù)據(jù)庫作業(yè)答案
助教2015-01推薦閱讀書目《OraclePL/SQL最佳實(shí)踐》,機(jī)械工業(yè)出版社《數(shù)據(jù)挖掘概念與技術(shù)》韓家煒,機(jī)械工業(yè)出版社《BuildingtheDataWarehouse》W.H.Inmon第一章1.8列出文件處理系統(tǒng)和DBMS的四個主要區(qū)別第二章2.9考慮圖2-15所示銀行數(shù)據(jù)庫系統(tǒng):(a)適當(dāng)?shù)闹鞔a是什么?branch(branch_name,branch_city,assets)customer(customer_name,customer_street,customer_city)loan(loan_number,branch_name,amount)borrower(customer_name,loan_number)account(account_number,branch_name,balance)depositor(customer_name,account_number)(b)給出你選擇的主碼,確定適當(dāng)?shù)耐獯a。loan:branch_namereferencesbranchaccount:branch_namereferencesbranchborrower:customer_namereferencescustomerloan_numberreferencesloandepositor:customer_namereferencescustomer account_numberreferencesaccount第二章2.10考慮圖2-8所示advisor關(guān)系,advisor的主碼是s_id。假設(shè)一個學(xué)生可以有多位指導(dǎo)老師。那么s_id還是advisor關(guān)系的主碼嗎?如果不是,advisor的主碼會是什么呢?答案:不能,s_id不再是advisor的主碼。因?yàn)榭赡艽嬖诙鄠€元組有著相同的s_id,此時s_id不能用來區(qū)別不同的元組。advisor的主碼應(yīng)該是s_id,i_id。2.11解釋術(shù)語關(guān)系和關(guān)系模型在意義上的區(qū)別答案:關(guān)系模式(relationschema)是一種定義類型,關(guān)系(relation)是這種類型的一個實(shí)例2.12考慮圖2-14所示關(guān)系數(shù)據(jù)庫。給出關(guān)系代數(shù)表達(dá)式來表示下列每一個查詢:a.找出為“FirstBankCorporation”工作的所有員工姓名。b.找出為“FirstBankCorporation”工作的所有員工的姓名和居住城市c.找出為“FirstBankCorporation”工作且掙錢超過10000美元的所有員工的姓名、街道地址和居住城市。第二章答案:2.13考慮2-15所示銀行數(shù)據(jù)庫。對于下列每個查詢,給出一個關(guān)系代數(shù)表達(dá)式:a.找出貸款額度超過10000美元的所有貸款號b.找出所有這樣的存款人姓名,他擁有一個存款額大于6000美元的賬戶c.找出所有這樣的存款人的姓名,他在“Uptown”支行擁有一個存款額大于6000美元的賬戶第二章答案:a.Πl(fā)oan_number(σamount>10000(loan))b.Πcustomer_name(σbalance>6000(depositor?account))c.Πcustomer_name(σ(branch_name=”Uptown”
∧balance>6000)(depositor?account))第三章3.12使用大學(xué)模式,用SQL寫出如下查詢。a.創(chuàng)建一門課程“CS-001”,其名稱為“WeeklySeminar”,學(xué)分為0b.創(chuàng)建該課程在2009年秋季的一個課程段,sec_id為1c.讓Comp.Sci.系的每個學(xué)生選修上述課程段d.刪除名為Chavez的學(xué)生選修上述課程段的信息e.刪除課程CS-001。如果在運(yùn)行此刪除語句之前,沒有先刪除這門課的授課信息(課程段),會發(fā)生什么事?f.刪除課程名稱中包含“database”的任意課程的任意課程段所對應(yīng)的所有takes元組,在課程名的匹配中忽略大小寫答案:a.insertintocoursevalues(’CS-001’,’WeeklySeminar’,’Comp.Sci.’,0);b.insertintosectionvalues(’CS-001’,1,’Autumn’,2009,null,null,null);C.insertintotakesselectid,’CS-001’,1,’Autumn’,2009,nullfromstudentwheredeptname=’Comp.Sci.’;第三章3.13寫出對應(yīng)于圖3-18中模式的SQLDDL.在數(shù)據(jù)類型上做合理的假設(shè),確保聲明主碼和外碼.答案:createtableperson(driver_idvarchar(50),namevarchar(50),addressvarchar(50),primarykey(driver_id));createtablecar(licensevarchar(50),modelvarchar(50),yearinteger,primarykey(license));createtableaccident(report_numberinteger,datedate,locationvarchar(50),primarykey(report_number));createtableowns(driver_idvarchar(50),licensevarchar(50),primarykey(driver_id,license)foriegnkey(driver_id)referencespersonforiegnkey(license)referencescar);createtableparticipated(report_numberinteger,licensevarchar(50),driver_idvarchar(50),damage_amountinteger,primarykey(report_number,license)foriegnkey(license)referencescarforiegnkey(report_number)referencesaccident));第三章3.15考慮圖3-19中的銀行數(shù)據(jù)庫,其中加下劃線的是主碼。對這個關(guān)系數(shù)據(jù)庫構(gòu)造如下的SQL查詢:a.找出在“Brooklyn”的所有支行都有賬戶的所有客戶b.找出銀行的所有貸款額的總和c.找出總資產(chǎn)至少比位于Brooklyn的某一家支行要多的所有支行名字答案:a.withbranchcountas(selectcount(*)fromBranchWherebranch_city=’Brooklyn’)selectcustomer_namefromcustomercwherebranchcount=(selectcount(distinctbranch_name)from(customernaturaljoindepositornaturaljoinaccountnaturaljoinbranch)asdwhered.customer_name=c.customre_name)b.selectsum(amount)fromloanc.selectbranch_namefrombranchwhereassets>some(selectassetsfrombranchwherebranch_city=’Brooklyn’)第四章4.12對于圖4-11中的數(shù)據(jù)庫,寫出一個查詢來找到那些沒有經(jīng)理的雇員。注意一個雇員可能只是沒有列出其經(jīng)理,或者可能有null經(jīng)理。使用外連接書寫查詢,然后不用外連接再重寫查詢。答案:使用外連接:selectemployee_namefromemployeenaturalleftouterjoinmanageswheremanager_nameisnull;
不使用外連接:selectemplyee_namefromemployeewherenotexists(selectemployee_namefrommanageswheremanages.employee_name=emplyee.employee_nameandmanages.manager_nameisnotnull);第四章4.12對于圖4-11中的數(shù)據(jù)庫,寫出一個查詢來找到那些沒有經(jīng)理的雇員。注意一個雇員可能只是沒有列出其經(jīng)理,或者可能有null經(jīng)理。使用外連接書寫查詢,然后不用外連接再重寫查詢。答案:使用外連接:selectemployee_namefromemployeenaturalleftouterjoinmanageswheremanager_nameisnull;
不使用外連接:selectemplyee_namefromemployeewherenotexists(selectemployee_namefrommanageswheremanages.employee_name=emplyee.employee_nameandmanages.manager_nameisnotnull);第四章4.13在什么情況下,查詢select*fromstudentnaturalfullouterjointakesnaturalfullouterjoincourse將包含在屬性titles上取空值的元組?答案:情況一:course元組中存在title屬性為null的元組情況二:存在一個學(xué)生,沒有上任何課(即takes里面沒有此學(xué)生的ID)
4.14給定學(xué)生每年修到的學(xué)分總數(shù),如何定義視圖tot_credits(year,num_credits)答案:createviewtot_credits(year,num_credits)as (selectyear,sum(credits) fromtakesnaturaljoincourse groupbyyear)第六章6.10a.∏name(student?takes?∏course_id(?dept_name=‘Comp.Sci.’(course)))b.∏ID,name(student)?∏ID,name(?year<2009(student?takes))c.dept_nameɡm(xù)ax(salary)(instructor)d.ɡm(xù)in(maxsal)(dept_nameɡm(xù)ax(salary)asmaxsal(instructor))6.11a.∏person_name(?company_name=“FirstBankCorporation”(works))b.∏person_name,city(employee?(?company_name=“FirstBankCorporation”(works)))c.∏person_name,street,city(?(company_name=“FirstBankCorporation”∧salary>10000)(works?employee))d.∏person_name(employee?works?company)e.∏company_name(company÷(∏city(?company_name=“SmallBankCorporation”(company))))6.12a.?instrcnt>1(course_id,section_id,year,semesterɡcount(*)asinstrcnt(teaches))b.∏course_id,section_id,year,semester(?ID<>other_ID(takes?ρtakes1(ID2,course_id,section_id,year,semester)(takes)))第八章8.6因?yàn)锳->BC,所以有A->B和A->C;因?yàn)锳->B和B->D,所以A->D;因?yàn)锳->CD和CD->E,所以A->E;又因?yàn)锳->A,所以綜上有A->ABCDE;因?yàn)镋->A,所以由傳遞性E->ABCDE;因?yàn)镃D->E,同理有CD->ABCDE;因?yàn)锽->D和BC->CD,所以BC->ABCDE還有C->C,D->D,BD->D。所以F的閉包有BD->B,BD->D,C->C,D->D,BD->BD,B->D,B->B,B->BDR的候選碼為A,BC,CD,E。8.27由result={B},以及F中的類似β→γ形式的FDs,發(fā)現(xiàn)滿足β?result的是B→B和B→D。所以result={B,D}。所以B+={B,D}。8.30(1)無損連接分解,維持?jǐn)?shù)據(jù)庫的正確性。(2)保持依賴分解,快速檢查更新的正確性(3)最小化重復(fù)信息,盡可能地使用最小的空8.31因?yàn)锽CNF并不總是保持依賴的,有些情況下BCNF的分解會妨礙對某些函數(shù)依賴的高效檢查,BCNF也可能會保留一些冗余,所以有時候也會選擇其它范式,比如3NF。
第十四章14.12原子性:原子性的用途在于保證程序執(zhí)行的步驟集合作為一個單一的、不可分割的單元出現(xiàn),使事務(wù)不可分割,要么執(zhí)行其全部內(nèi)容,要么不執(zhí)行。隔離性:該特性確保事務(wù)正常執(zhí)行而不被來自并發(fā)執(zhí)行的數(shù)據(jù)庫語句所干擾。持久性:持久性使得事務(wù)的操作在系統(tǒng)崩潰后也是持久的。一致性:一致性要求一個事物作為原子從一個一致的數(shù)據(jù)庫狀態(tài)開始獨(dú)立地運(yùn)行,且事務(wù)結(jié)束時數(shù)據(jù)庫也必須再次是一致的。14.13(1)活動狀態(tài)->部分提交狀態(tài)->提交狀態(tài)事務(wù)開始執(zhí)行,執(zhí)行完最后一條語句,并成功完成
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞務(wù)分包企業(yè)合同范本
- 華萊士加盟合同范例
- 勞務(wù)合同范本遷戶口
- 單位食堂承攬合同范本
- 個人農(nóng)業(yè)養(yǎng)殖合同范本
- 加盟合同范本李慶亮
- 出售公司房屋合同范本
- 人壽第三方代理合同范本
- 勞動用工合同范本范本
- 企業(yè)策劃標(biāo)準(zhǔn)合同范本
- 高新技術(shù)企業(yè)認(rèn)定申請書樣例與說明
- 數(shù)據(jù)結(jié)構(gòu)英文教學(xué)課件:chapter6 Tree
- 高壓氧科工作總結(jié)高壓氧科個人年終總結(jié).doc
- 《政治學(xué)概論》教學(xué)大綱
- 橋梁缺陷與預(yù)防
- 食品生物化學(xué)習(xí)題謝達(dá)平(動態(tài))
- 新蘇教版小學(xué)科學(xué)三年級下冊全冊教案(2022年春修訂)
- 保安員工入職登記表
- 睿達(dá)RDCAM激光雕刻切割軟件V5.0操作說明書
- 機(jī)械設(shè)計(jì)基礎(chǔ)平面連桿機(jī)構(gòu)課件
- 人力資源部經(jīng)理崗位說明書
評論
0/150
提交評論