【正文】
ATE TABLE T ( TNo CHAR(20) PRIMARY KEY, TN CHAR(20), TD Money )。 2.用SQL語句創(chuàng)建帶外鍵約束的數(shù)據(jù)表 在上題基礎上,假設還存在物資入庫數(shù)據(jù)表C,包括物資編號CNo,入庫數(shù)量Cn等字段。Cn為數(shù)值型(兩位小數(shù))。Cno為字符型(長度10)。該數(shù)據(jù)表與物資臺賬數(shù)據(jù)表T之間存在外鍵約束,即物資臺賬數(shù)據(jù)表T中不存在的記錄不能夠出現(xiàn)在該表中。請根據(jù)上述說明,用SQL創(chuàng)建工資數(shù)據(jù)表C CREATE TABLE C ( CNo CHAR(10), Cn numeric, FOREIGN KEY (CNo) REFERENCES T(TNo) )。3.程序應用題 設學生成績表的結(jié)構(gòu)為(學號、課程號、成績),程序運行界面如圖1所示。進入界面后,用戶首先選擇學號(Combo1)、課程號(Combo2),姓名(Text1)和課程名(Text2)從數(shù)據(jù)庫中自動讀入;然后,用戶修改對應的成績(Text3),點擊“確認”按鈕后,將結(jié)果更新到學生成績表中。請補充完成下列程序代碼。 Command1 圖1“修改記錄”窗體運行界面 Private Sub Command1_Click() ‘聲明一個字符串變量 Dim strSQL AS String ‘第一步:拼寫Update語句 strSQL =“ ” ‘第二步:執(zhí)行Update語句 strSQL End Sub Private Sub Command1_Click() ‘聲明一個字符串變量 Dim strSQL AS String ‘第一步:拼寫Update語句 strSQL=“Update 學生成績表 Set 成績=“+Text3+”Where 學號=‘“++”’And 課程號=‘“++”’”(本小點10分) ‘第二步:執(zhí)行Update語句 strSQL (本小點10分) End Sub1.用SQL語句創(chuàng)建簡單數(shù)據(jù)表設有某數(shù)據(jù)庫中有課程表(表名為Courses),包括課程號CNo、課程名CName兩個字段。CNo和CName均為字符型(長度10)。CNo是主鍵,請用SQL語句創(chuàng)建該數(shù)據(jù)表Courses。參考答案及評分要點:參考答案CREATE TABLE Courses( CNo CHAR(10) PRIMARY KEY, CName CHAR(10),)。2.利用SQL語句進行查詢在第五大題第1題的基礎上,假設還存在成績表(表名marks),包括學號SNo,課程號CNo和成績mark三個字段。某教師希望查詢課程號為“JK001”的課程的所有學生成績,并按如圖1所示的方式顯示查詢結(jié)果,請寫出對應的Select查詢語句。圖1 要求的顯示結(jié)果參考答案及評分要點:參考答案SELECT ,Cname,Sno,mark FROM courses,marks WHERE = and =39。JK00139。3.程序應用題接第五大題第2小題,某教學管理系統(tǒng)中包括課程信息錄入功能,程序運行界面如圖2所示,其中Text1課程號、Text2為課程名。進入界面后,用戶輸入所有數(shù)據(jù)后,點擊“確認”按鈕后,將結(jié)果插入到課程表Courses中。請補充完成下列程序代碼。Command1圖2“增加記錄”窗體運行界面Private Sub Command1_Click() ‘聲明一個記錄集對象Dim ADOrs As New Recordset ‘將記錄集對象與已建立的數(shù)據(jù)庫聯(lián)接對象ADO綁定=ADO ‘第一步:在課程表Courses中查詢是否存在關鍵字相同的記錄 (1)拼寫查詢字符串strSQL=“Select CNo From courses Where Cno=‘” + Text1 + “’” (2)執(zhí)行查詢語句 strSQL ‘第二步:如果記錄已經(jīng)存在,則退出程序If Not Then MsgBox “記錄已存在,不能繼續(xù)增加” Exit Sub End If ‘第三步:將結(jié)果插入到課程表Courses中 (1)拼寫Insert插入語句strSQL = (2)執(zhí)行Insert插入語句 strSQL End Sub參考答案及評分要點: ‘第一步:在課程表Courses中查詢是否存在關鍵字相同的記錄 strSQL=“Select CNo From courses Where Cno=‘” + Text1 + “’” StrSQL (本小點4分) ‘第二步:如果記錄已經(jīng)存在,則退出程序 If Not Then (本小點6分) MsgBox “記錄已存在,不能繼續(xù)增加” Exit Sub End If ‘第三步:將結(jié)果插入到課程表Courses中strSQL = “Insert Into courses(Cno,CName) Values(‘”+Text1+“’,‘”+Text2+“’)” (本小點6分) strSQL (本小點4分) End Sub1.用SQL語句創(chuàng)建簡單數(shù)據(jù)表設有兩個關系(1)教師關系T,包括教師編號TNo,姓名TN,系別TD,職稱RANK;(2)課程關系C,包括課程號CNo,課程名CN。教師編號和課程號分別是上述兩個關系的主鍵,請用SQL語句創(chuàng)建教師數(shù)據(jù)表T。參考答案及評分要點:參考答案CREATE TABLE T{ TNo INT PRIMARY KEY, TN CHAR(30), TD CHAR(20), RANK CHAR(20)}。2.用SQL語句創(chuàng)建數(shù)據(jù)表在上題基礎上,假設還存在教師教授課程關系TC,包括教師編號TNo和課程號CNo。注意:說明主鍵碼和外鍵碼約束參考答案及評分要點:參考答案CREATE TABLE TC{TNo INT,CNo INT,PRIMARY KEY (Tno,Cno),FOREIGN KEY (TNo) REFERENCES T(TNo),FOREIGN KEY (CNo) REFERENCES C(CNo)}。3.利用SQL語句進行查詢在上題的基礎上,如果要查詢“張紅老師承擔的所有課程”,請寫出對應的SQL查詢語句。參考答案SELECT , FROM T,C,TCWHERE = AND = AND =’張紅’4.程序應用題設學生成績表的結(jié)構(gòu)為(學號、課程號、成績),程序運行界面如圖1所示。進入界面后,用戶首先選擇學號(Combo1)、課程號(Combo2),姓名(Text1)和課程名(Text2)從數(shù)據(jù)庫中自動讀入;然后,用戶輸入對應的成績(Text3),點擊“確認”按鈕后,將結(jié)果插入到學生成績表中。請補充完成下列程序代碼。Command1圖1“增加記錄”窗體運行界面Private Sub Command1_Click() ‘聲明一個記錄集對象Dim ADOrs As New Recordset ‘將記錄集對象與已建立的數(shù)據(jù)庫聯(lián)接對象ADO綁定=ADO ‘第一步:在學生成績表中查詢是否存在關鍵字相同的記錄 (1)拼寫查詢字符串strSQL =“ ” (2)執(zhí)行查詢語句 strSQL ‘第二步:如果關鍵字重復,則退出程序If Not Then MsgBox “記錄已存在,不能繼續(xù)增加” Exit Sub End If ‘第三步:將結(jié)果插入到學生成績表中 StrSQL=”Insert Into 學生成績表(學號,課程號,成績) Values(‘ ”++” ‘,’ “++” ‘, “+Str(Val())+”)” StrSQL End Sub參考答案及評分要點: ‘第一步:在學生成績表中查詢是否存在關鍵字相同的記錄 strSQL=”Select * From 學生成績表 Where 學號=’ ”++” ‘ And 課程號=’ “++” ‘ “(本小點3分) StrSQL (本小點2分) ‘第二步:如果關鍵字重復,則退出程序 If Not Then (本小點3分) MsgBox “記錄已存在,不能繼續(xù)增加” Exit Sub End If ‘第三步:將結(jié)果插入到學生成績表中 StrSQL=”Insert Into 學生成績表(學號,課程號,成績) Values(‘ ”++” ‘,’ “++” ‘, “+Str(Val())+”)” StrSQL (本小點2分) End Sub第三部分 模擬考核試題、解答及評分標準一、單項選擇題(每個題只有一個答案是正確的。每題2分,共15題,30分)1.如果希望從學生表中查詢出所有姓“王”的同學,那么條件語句應該是( B )。A、Where 姓名 % ‘王’B、Where 姓名 LIKE ‘王%’C、Where 姓名 % ‘LIKE王’D、Where 姓名 LIKE ‘王’2.通常情況下,“數(shù)據(jù)庫管理系統(tǒng)”的英文縮寫是( A )。A、DBMSB、DBSC、DBAD、DMS3.從最終用戶應用程序的視角看,數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)是( C )。A、模式、外模式和內(nèi)模式B、內(nèi)模式、外模式和模式C、外模式、模式和內(nèi)模式D、外模式、內(nèi)模式和模式4.在一個學生關系中,能夠成為主關鍵字(或稱主碼)的屬性是( C )。A、性別B、年齡C、學號D、班級5.有嚴格的數(shù)學基礎的數(shù)據(jù)模型是( A )。A、關系模型B、網(wǎng)狀模型C、層次模型D、面向?qū)ο竽P?.下列關于索引的說明不正確的是( A )。A、索引必須創(chuàng)建在主關鍵字之上B、索引與基本表分開存儲C、索引是為了提高查詢速度而創(chuàng)建的D、索引會在一定程度上影響增刪改操作的效率7.設關系R是滿足第一范式的,若R中不存在非主屬性對主鍵的部分函數(shù)依賴,則R符合( A )。A、第二范式B、第三范式C、BNC范式D、第四范式8.下列符合第三范式的關系是( D )。A、學生(學號,姓名,課程號,課程名)B、學生(學號,姓名,課程名,成績)C、學生(學號,姓名,課程號,成績)D、學生(學號,姓名,性別)9.在第一個關系中出現(xiàn),而在第二個關系中不出現(xiàn)的記錄組成的新關系稱為( D )。A、兩個關系的積B、兩個關系的并C、兩個關系的交D、兩個關系的差10.數(shù)據(jù)庫應用程序開發(fā)中,需求分析階段的主要目的是( A )。A、回答“干什么”的問題B、回答“怎么干”的問題C、建立邏輯數(shù)據(jù)模型D、建立最佳物理存儲結(jié)構(gòu)11.用戶使用SQL Server時,通常需要依次經(jīng)過兩個安全性階段( C )。A、登錄驗證、操作驗證B、操作驗證、登錄驗證C、身份驗證、權限認證D、權限認證、身份驗證12.SQL Server數(shù)據(jù)庫中的一個完整的備份通常要包括( A )。A、系統(tǒng)數(shù)據(jù)庫、用戶數(shù)據(jù)庫和事務日志B、系統(tǒng)數(shù)據(jù)庫、系統(tǒng)表和數(shù)據(jù)字典C、系統(tǒng)數(shù)據(jù)庫、用戶數(shù)據(jù)庫和數(shù)據(jù)字典D、用戶數(shù)據(jù)庫和事務日志13.SQL Server中進行數(shù)據(jù)庫恢復的SQL語句是( C )。A、INSERT DATABASEB、BACKUP DATABASEC、RESTORE DATABASED、UPDATE DATABASE14.下列SQL語句中,能夠完成并運算的是( A )。A、SELECT * FROM 籃球愛好者 UNION SELECT * FROM 足球愛好者B、SELECT * FROM 籃球愛好者 INTERSECT SELECT * FROM 足球愛好者C、SELECT * FROM 籃球愛好者 EXCEPT SELECT * FROM 足球愛好者D、SELECT * FROM 籃球愛好者 ,足球愛好者15.設學生表和課程表的結(jié)構(gòu)分別為(學號,姓名)和(學號,課程號,成績),如果希望查詢出“成績大于90分的學生姓名”,則對應的SQL語句是( D )。A、SELECT 姓名 FROM 學生表 WHERE = AND 90B、SELECT 姓名 FROM 課程表 = AND 90C、SELECT 姓名 FROM 學生表,課程表 WHERE = OR 90D、SELECT 姓名 FROM 學生表,課程表 WHERE = AND 90二、填空題(每空2分,共10分)1.數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)由外模式、 模式 和 內(nèi)模式 三級抽象模式構(gòu)成。2.進行數(shù)據(jù)庫備份時,必須同時復制主數(shù)據(jù)文件和事務日志文件。3.“實體一聯(lián)系”方法是描述數(shù)據(jù)庫概念模型的主要方法,一般稱這種方法為ER方法(或ER圖方法)。4.用戶使用SQL Server數(shù)據(jù)庫時,一般需要經(jīng)過兩個安全性階段:身份驗證和權限認證。三、判斷題(正確的在括號內(nèi)打上“√”,錯誤的打上“╳”。每小題2分,共10分)1.計算機數(shù)據(jù)處理技術大致經(jīng)歷了人工管理、文件管理和SQL Se