SQLServer數據庫管理與開發教程與實訓介紹_第1頁
SQLServer數據庫管理與開發教程與實訓介紹_第2頁
SQLServer數據庫管理與開發教程與實訓介紹_第3頁
SQLServer數據庫管理與開發教程與實訓介紹_第4頁
SQLServer數據庫管理與開發教程與實訓介紹_第5頁
已閱讀5頁,還剩34頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、內容簡介本書以學生和教師都非常熟悉的“教學成績管理信息系統”為案例貫穿全書例題、習題,目的使同學們以“教學成績管理系統”為案例學會SQL數據庫管理與編程開發技能。本書例題、實訓、習題中所有案例的庫、表、視圖、字段、函數、存儲過程、觸發器及其語法格式等對象均采用漢字命名,使同學們能更好地理解舉例的意義。全書共15章。第1、2章,講解數據庫基本概念、基本理論以及數據庫系統設計;第3章,介紹了SQL Server服務器的安裝與配置;第48章,講解了SQL語言基礎、數據庫和數據表、數據查詢與視圖、設計數據的完整性、索引與優化;第911章,講解自定義函數、存儲過程和觸發器,游標及事務,數據庫的安全性;第

2、12、13章,介紹數據庫管理的備份恢復、導入導出與分離附加,代理服務與數據復制;第14、15章,給出教學成績管理系統(VB+ASP)數據庫應用系統的完整案例及其源代碼;最后在附錄中提供了三個具有特色的輔助教學軟件:SQL作業提交與批閱系統、SQL上機考試與閱卷系統、SQL保留字背單詞系統,還配有電子課件,以幫助師生們順利地完成本課程的教學任務。本書內容豐富、實用性強,簡明扼要、深入淺出,通俗易懂,特別適用于高職高專、成人專科等相關專業作為數據庫原理與技術、SQL數據庫技術等課程的教材,也可以作為高等院校相關專業進行課程設計、畢業設計的參考書,還可以作為在職程序員和數據庫管理員自學教程或SQL

3、Server培訓教材。前 言本書以學生和教師都非常熟悉的“教學成績管理信息系統”為案例貫穿全書例題、習題,使同學們以“教學成績管理系統”為案例學會SQL數據庫管理與開發技能。本書例題、實訓、習題中所有案例的庫、表、視圖、字段、函數、存儲過程、觸發器及其語法格式等對象均采用漢字命名(母語),使同學們能更好地理解所舉例的意義。全書共15章,首先,講解數據庫基本概念、基本理論以及數據庫系統設計;其次:介紹了SQL Server安裝與配置;第三部分,講解SQL語言基礎、數據庫和表、查詢與視圖、設計數據的完整性、索引與優化;第四部分,講解自定義函數、存儲過程和觸發器,游標及事務,數據庫訪問的安全性;第五

4、部分,講解數據庫管理的備份恢復、導入導出與分離附加,代理與復制;第六部分,給出了一套數據庫應用系統的完整的案例及其源代碼:教學成績管理系統的VB實現與ASP實現;最后提供了三個附錄:SQL作業提交與批閱系統、SQL上機考試與閱卷系統、SQL保留字背單詞系統,同時配備了電子課件,以幫助師生們順利地完成本課程的教學任務。本書的編寫思想:l 本書遵循北大版21世紀高職高專計算機系列實用規劃教材叢書編寫目的和特色。l 以學生為本,以培養學生就業技能為出發點與落腳點,力求讓學生用最簡單的方法、最少的時間學到最有用的數據庫技術。l 遵循從實際到理論、從具體到抽象、從個別到一般的人類認識客觀事物的方法:提出

5、問題,介紹解決問題的方法,歸納規律和總結概念。l 著重“怎么做?”,而不去糾纏“為什么?”,著眼點是應用,而不是系統地講解理論。l 力求簡明扼要,深入淺出,通俗曉暢,看得懂、學得會。l 本書的課時分配建議如下。章內容60課時72課時96課時108課時4*15周4*18周6*16周6*18周課堂上機課堂上機課堂上機課堂上機1數據庫系統基礎203030302數據庫管理系統設計00000.50103SQL Server服務器的安裝與配置000000104Transact-SQL語言基礎334444445數據庫和數據表444444446數據查詢與視圖556666667設計數據的完整性444444448

6、索引、全文索引與優化00124444續表章內容60課時72課時96課時108課時4*15周4*18周6*16周6*18周課堂上機課堂上機課堂上機課堂上機9自定義函數、存儲過程和觸發器4444444410游標及事務3344444411數據庫訪問的安全性4444444412備份恢復、導入導出與分離附加1111224413代理服務與數據復制0000444414教學成績管理系統的VB實現010.526661115教學成績管理系統的ASP實現010.510.5111合計3030363650475454本書的支持網站除北大出版社網站()外還有第一主編的個人網站)有大量的相關課件、源代碼、教學大綱、考試試題

7、等資料,第一主編的電子郵件地址是,歡迎大家交流。目 錄第1章 數據庫系統基礎11.1 數據庫基本概念11.1.1 基本概念1 數據庫三要素21.1.3 數據庫分類31.2 數據庫系統的體系結構51.2.1 三級模式結構51.2.2 數據庫的兩級映像功能51.2.3 數據庫管理系統的功能61.2.4 數據庫管理系統的組成71.2.5 數據庫的特點71.3 關系數據庫71.3.1 關系數據庫的基本概念81.3.2 關系的運算91.3.3 關系的完整性約束111.3.4 關系數據庫121.4 數據庫系統的應用131.4.1 數據庫系統的應用結構131.4.2 C/S結構的教學成績管理系統141.4.

8、3 B/S結構的教學成績管理系統151.5 本章小結161.6 本章習題16第2章 數據庫系統設計182.1 功能設計182.1.1 需求分析182.1.2 成績管理系統功能設計192.2 數據庫設計202.2.1 數據庫設計方法202.2.2 概念結構設計212.2.3 邏輯結構設計252.3 系統實施332.3.1 數據庫實現342.3.2 系統編程342.3.3 運行和維護352.4 本章小結352.5 本章習題35第3章 SQL Server服務器的安裝與配置363.1 SQL Server 2000的安裝363.1.1 SQL Server 2000的對系統需求363.1.2 SQL

9、 Server 2000的安裝版本373.1.3 SQL Server 2000的安裝步驟373.2 SQL Server 2000的主要工具433.2.1 SQL服務管理器433.2.2 SQL企業管理器443.2.3 SQL查詢分析器443.2.4 SQL聯機幫助453.3 SQL Server服務器啟動與注冊、配置453.3.1 SQL Server服務管理453.3.2 創建服務器組463.3.3 注冊/刪除服務器463.3.4 配置SQL Server服務器493.4 本章小結503.5 本章習題50第4章 T-SQL語言基礎524.1 數據類型與常量524.1.1 數據類型524.

10、1.2 常量534.2 局部變量和全局變量544.2.1 SELECT語句無源查詢544.2.2 局部變量554.2.3 全局變量564.3 常用函數564.3.1 數學函數564.3.2 字符串函數574.3.3 日期時間函數584.3.4 聚合函數594.3.5 系統函數594.3.6 系統統計函數604.4 運算及表達式614.4.1 算術運算614.4.2 字符串連接運算614.4.3 比較運算614.4.4 邏輯運算624.4.5 運算優先級624.5 批處理和流程控制語句634.5.1 批和腳本634.5.2 流程控制語句644.6 本章小結664.7 本章習題68第5章 數據庫和

11、數據表715.1 數據庫的結構715.1.1 系統數據庫715.1.2 數據庫文件和文件組725.1.3 數據庫對象735.2 用企業管理器管理數據庫和表735.2.1 創建數據庫735.2.2 查看/修改數據庫信息755.2.3 刪除數據庫765.2.4 創建數據表775.2.5 查看表結構785.2.6 修改表結構795.2.7 刪除表805.2.8 管理數據表數據815.2.9 常用系統數據表825.3 用T-SQL管理數據庫835.3.1 創建數據庫835.3.2 查看數據庫845.3.3 修改數據庫875.3.4 刪除數據庫885.4 用T-SQL管理數據表885.4.1 創建表89

12、5.4.2 顯示表895.4.3 修改表915.4.4 刪除表925.5 用T-SQL語句操作數據表數據925.5.1 插入數據925.5.2 修改數據935.5.3 刪除數據935.6 用(T-SQL)語句處理文本圖像數據945.6.1 圖像、文本數據945.6.2 寫入數據955.6.3 修改數據965.6.4 讀出數據975.7 本章實訓98實訓目的98實訓內容98實訓過程98實驗總結995.8 本章小結995.9 本章習題100第6章 數據查詢與視圖1026.1 SELECT語句概述1026.1.1 基本語法格式1026.1.2 執行方式1036.2 T-SQL簡單查詢1056.2.1

13、 SELECT子句選取字段和記錄1056.2.2 條件查詢1076.2.3 匯總查詢(聚合函數)1096.2.4 查詢結果排序1096.2.5 查詢結果保存1106.3 T-SQL高級查詢1106.3.1 連接查詢1106.3.2 使用分組1136.3.3 合并結果集1156.3.4 匯總計算1166.3.5 子查詢1176.4 視圖1186.4.1 視圖的概念1186.4.2 創建視圖1196.4.3 修改視圖1216.4.4 查詢視圖1226.4.5 通過視圖更新數據1226.4.6 刪除視圖1236.4.7 使用視圖的優點及注意事項1236.5 本章實訓124實訓目的124實訓內容124

14、實訓過程124實驗總結1256.6 本章小結1256.7 本章習題126第7章 設計數據的完整性1297.1 數據完整性的概念1297.1.1 實體完整性(Entity Integrity)1307.1.1 實體完整性(Entity Integrity)1307.1.2 域完整性(Domain Integrity)1307.1.3 參照完整性(Referential Integrity)1307.1.4 用戶定義完整性(User-defined Integrity)1317.1.5 數據完整性的實現方式1317.2 使用約束實施數據完整性1317.2.1 NOT NULL(非空)約束1317.

15、2.2 PRIMARY KEY(主鍵)約束1337.2.3 UNIQUE(唯一性)約束1357.2.4 CHECK(檢查)約束1367.2.5 DEFAULT(默認)約束1387.2.6 FOREIGN KEY(外鍵)約束1397.3 默認管理技術1427.3.1 創建默認1427.3.2 綁定默認1437.3.3 解除綁定默認1457.3.4 刪除默認1457.4 使用規則1467.4.1 創建規則1467.4.2 綁定規則1477.4.3 解除綁定規則1487.4.4 刪除規則1497.5 使用IDENTITY(標識符)列1497.5.1 創建IDENTITY列1507.5.2 使用IDE

16、NTITY函數1507.6 本章實訓151實訓目的151實訓內容151實訓過程151實驗總結1557.7 本章小結1557.8 本章習題156第8章 索引、全文索引與優化1588.1 索引的概念1588.1.1 索引的概念1598.1.2 創建索引的優、缺點1598.1.3 考慮建索引的列和不考慮建索引的列1608.2 索引的類型1608.2.1 聚集索引1618.2.2 非聚集索引1628.3 索引的創建與管理1628.3.1 使用T-SQL語句創建與管理索引1628.3.2 使用企業管理器創建、查看、重命名及刪除索引1648.3.3 使用向導創建索引1668.4 索引的維護1674.4.1

17、 顯示索引的碎塊信息1674.4.2 整理碎片1684.4.3 重建索引1698.5 索引優化1708.6 全文索引1718.6.1 全文索引概述1718.6.2 使用企業管理器創建全文索引目錄1738.6.3 使用向導創建全文索引1738.6.4 使用全文索引1758.7 本章實訓177實訓目的177實訓內容177實訓過程177實訓總結1778.8 本章小結1778.8 本章習題178第9章 自定義函數、存儲過程和觸發器1799.1 自定義函數1799.1.1 自定義函數的概念1799.1.2 創建自定義函數1799.1.3 查看自定義函數信息1819.1.4 調用自定義函數1829.1.5

18、 修改自定義函數1839.1.6 刪除自定義函數1839.2 存儲過程1839.2.1 存儲過程的概念1849.2.2 創建存儲過程1849.2.3 查看存儲過程信息1859.2.4 執行存儲過程1869.2.5 修改存儲過程1869.2.6 刪除存儲過程1879.2.7 使用存儲過程的優點1879.3 觸發器1889.3.1 觸發器的概念1889.3.2 創建觸發器1889.3.3 觸發器使用限制1909.3.4 修改觸發器1919.3.5 刪除觸發器1919.3.6 使用觸發器的優點1929.4 本章實訓192實訓目的192實訓內容192實訓過程192實驗總結1949.5 本章小結1949

19、.5 本章習題196第10章 游標及事務19910.1 游標19910.1.1 游標的概念19910.1.2 聲明游標20010.1.3 打開游標20110.1.4 數據處理20110.1.5 關閉游標20410.1.6 釋放游標20410.2 事務的使用20510.2.1 事務的概念20510.2.2 事務的模式20710.2.3 事務控制20910.4 本章實訓211實訓目的211實訓內容211實訓過程212實驗總結21310.5 本章小結21310.6 本章習題214第11章 數據庫的安全性21511.1 SQL Server的安全機制21511.1.1 數據庫管理系統的安全性21511

20、.1.2 SQL Server的安全機制21511.2 服務器的登錄賬戶21611.2.1 設置安全認證模式21611.2.2 服務器登錄賬戶21811.2.3 SQL上機考試與輔助閱卷系統案例簡介21911.2.4 增加登錄賬戶21911.2.5 阻止賬戶登錄22111.2.6 刪除登錄賬戶22211.3 服務器的角色22311.3.1 固定服務器角色22311.3.2 查看固定服務器角色成員22311.3.3 向固定服務器角色中添加成員22411.3.4 從固定服務器角色中刪除成員22511.4 數據庫的用戶22511.4.2 修改和查看數據庫用戶22611.4.3 刪除數據庫用戶2271

21、1.4.4 特殊數據庫用戶dbo、guest22711.5 數據庫的角色22711.5.1 固定數據庫角色22711.5.2 自定義數據庫角色22811.5.3 管理數據庫角色成員22911.6 管理權限23011.6.1 權限23111.6.2 使用企業管理器管理權限23211.6.3 使用T-SQL語句管理權限23411.7 本章實訓236實訓目的236實訓內容236實訓過程236實驗總結23711.8 本章小結23711.8 本章習題239第12章 數據庫備份恢復、導入導出與分離附加24112.1 備份概述24112.1.1 備份的概念24112.1.2 備份類型24212.1.3 備份

22、設備24212.1.4 備份的策略與規劃24312.2 備份數據庫24412.2.1 數據庫備份設備24412.2.2 備份數據庫24512.3 恢復數據庫24812.3.1 檢查點24812.3.2 恢復數據庫24912.4 數據導入與導出25112.4.1 數據導入與導出的意義25112.4.2 SQL Server數據庫表數據導出25112.4.3 導入數據到SQL Server 表中25512.5 數據庫分離與附加26012.6 本章實訓262實訓目的262實訓內容262實訓過程262實訓總結26512.7 本章小結26612.8 本章習題266第13章 代理服務與數據復制26713.

23、1 SQL Server代理服務26713.1.1 SQL Server代理服務配置26713.1.2 定義操作員27013.1.3 作業管理27213.1.4 警報管理27713.2 SQL Server數據復制27913.2.1 復制概述27913.2.2 配置服務器28013.2.3 創建發布28213.2.4 創建訂閱28413.2.5 復制監視器28613.3 本章實訓287實訓目的287實訓內容287實訓過程288實訓總結28813.4 本章小結28813.5 本章習題288第14章 教學成績管理系統的VB實現29014.1 數據庫實現29014.1.1 創建數據庫29014.1.

24、2 創建數據表29014.1.3 創建觸發器29214.1.4 創建視圖29314.2 主窗體的創建29314.2.1 Visual Basic設置29314.2.2 創建主窗體29414.2.3 模塊設計與主窗體菜單29514.2.4 全局變量29714.2.5 程序代碼29714.2.6 程序啟動順序29814.3 數據訪問機制29914.3.1 ADO對象結構29914.3.2 ADO編程模型30014.3.3 SQL執行函數30014.4 登錄界面與權限30214.4.1 系統登錄界面30214.4.2 權限設置30414.5 信息查詢模塊30514.5.1 cell主要屬性30614

25、.5.2 學生檔案查詢30614.6 數據維護模塊31014.7 數據備份還原與系統幫助模塊31414.7.1 數據備份31414.7.2 數據還原31614.7.3 幫助文件制作31714.8 本章小結31714.9 本章習題318第15章 教學成績管理系統的ASP實現31915.1 安裝與使用31915.1.1 應用軟件安裝31915.1.2 IIS配置32015.1.3 教學成績管理數據庫附加32015.1.4 教學成績管理系統(ASP)的使用32115.2 系統實現32215.2.1 系統需求32315.2.2 總體設計32315.2.3 數據庫連接32415.2.4 數據查詢3251

26、5.3 本章小結32715.4 本章習題327附錄1 SQL作業提交與批閱系統328附錄2 SQL上機考試與閱卷系統334附錄3 SQL保留字背單詞系統341附錄1 SQL作業提交與批閱系統為了老師們有效地組織好本課程的教學,為了同學們有效地學好本課程,特研制本系統。系統中主要用戶有:代課教師、學習小組組長、組員。我們可將一個教學班分成812個學習小組,每個小組46名學員,然后指定12名組長。其職責是教師布置作業、批閱部分學生(主要批閱課代表、組長)的作業以及查閱全體同學作業完成情況;組長批閱其組員的作業,查閱本組同學作業完成情況,其中選擇題、判斷題、填空題自動批閱;學生通過上機實習完成作業,

27、并將其結果提交到數據庫中。1.1 系 統 安 裝運行環境:操作系統Windows 2000及以上版本、數據庫服務器SQL Server 2000。數據庫安裝:(1) 從北京大學出版社第六事業部網站下載WinRar自解壓縮包:SQL作業提交與批閱系統.exe。在安裝SQL Server 2000服務器的計算機上執行自解壓縮包:SQL作業提交與批閱系統.exe進行安裝,默認安裝目錄:e:SQL作業提交與批閱系統。(2) 在企業管理器中,附加自解壓釋放在安裝目錄的數據庫文件:數據庫SQL作業數據庫.mdf、數據庫SQL作業數據庫_log.ldf。(3) 在查詢分析器中用sa身份運行賬戶初始化.sql

28、腳本文件設置賬戶。客戶端安裝:(1) 在安裝目錄的客戶端子目錄下,雙擊PBCLTRT90.msi安裝PowerBuilder的運行庫。(2) 在安裝目錄的客戶端子目錄下,修改配置文件:config.ini中成為數據庫服務器的IP地址。(3) 將安裝目錄的子目錄客戶端共享,在網絡中每臺考試客戶端復制安裝目錄的客戶端子目錄的內容,雙擊PBCLTRT90.msi安裝PowerBuilder的運行庫,雙擊sql_test.exe運行本軟件。1.2 系 統 使 用1.2.1 教師初始設置(1) 系統登錄在桌面單擊【SQL作業提交與批閱系統】快捷圖標,出現如附圖1所示的登錄界面,用戶類型有:學生、老師。以

29、老師身份登錄,sql老師初始口令:22,輸入口令后出現如附圖2所示的主界面。登錄后口令可自行修改。 附圖1 登錄界面 附圖2 系統主界面(2) 設置班級信息在系統菜單欄上單擊【系統】|【設置班級信息】菜單,出現如附圖3所示的【設置班級】界面,一次性設置好班級信息進入下一步。(3) 設置學生信息在系統菜單欄上單擊【系統】|【設置學生信息】菜單,出現如附圖4所示的【學生信息維護】界面,一次性設置好學生信息進入下一步,特別是學生學號,不可漏設。 附圖3 設置班級 附圖4 設置學生信息(4) 初始化作業表在系統菜單欄上單擊【系統】|【初始化作業表】菜單,出現如附圖5所示的【初始化作業布置、完成表】,在

30、上述兩步設置好班級名稱和學生學號的條件下,執行初始化。這種操作一般來說只能執行一次。(5) 參數設置在系統菜單欄上單擊【系統】|【設置系統參數】菜單,出現如附圖6所示的【參數設置】。其中,設置學生登錄賬戶與口令是為每個學生設置登錄賬戶和初始密碼為學號;作業系統登錄客戶密碼配置新密碼后,還需修改配置文件:config.ini中PassWord=2005成為新密碼。 附圖5 初始化作業布置、完成表 附圖6 參數設置1.2.2 教師日常使用(1) 教師布置作業以老師身份登錄系統,在系統菜單欄上單擊【教師】|【教師布置作業】菜單,出現如附圖7所示的【教師布置作業】界面,選擇布置作業。(2) 教師批閱作

31、業在系統菜單欄上單擊【教師】|【教師批閱作業】菜單,出現如附圖8所示的【教師批閱作業】界面。其中,單擊【自動批閱】按鈕將自動批閱選擇題、判斷題、填空題及空白題。 附圖7 教師布置作業 附圖8 教師批閱作業(3) 瀏覽學生完成作業情況以老師身份登錄系統,在系統菜單欄上單擊【教師】|【瀏覽學生完成作業情況】菜單,出現如附圖9所示的【查詢學生完成作業情況】界面。(4) 備份數據在系統菜單欄上單擊【系統】|【備份數據】菜單,出現如附圖10所示的【備份數據】界面,可由安排課代表每次上機實訓課后備份,一般備份前兩次上機后的數據即可,以備數據丟失后恢復數據時使用。 附圖9 查詢學生完成作業情況 附圖10 備

32、份數據 學生日常使用(1) 系統登錄在桌面單擊【SQL作業提交與批閱系統】快捷圖標,出現登錄界面,以學生身份登錄,初始口令:學號,輸入口令后出現如附圖11所示的主界面。登錄后口令可自行修改。(2) 上機完成提交作業在菜單欄上單擊【學生】|【上機完成提交作業】菜單,出現如附圖12所示的【上機完成提交作業】界面,雙擊題目區進行該題作答提交。 附圖11 學生登錄主控界面 附圖12 上機完成提交作業(3) 查看作業批閱信息在菜單欄上單擊【學生】|【查看作業批閱信息】菜單,出現如附圖13所示的【查看作業批閱信息】界面,可由安排課代表每次上機實訓課后備份,一般備份前兩次上機后的數據即可,以備數據丟失后恢復

33、數據時使用。(4) 瀏覽學生完成作業情況在菜單欄上單擊【學生】|【查看作業完成情況】菜單,出現如附圖14所示的【查看作業完成情況】界面。 附圖13 查看作業批閱信息 附圖14 查看作業完成情況 組長日常使用(1) 組長批閱組員作業如果某學生指定為組長,在菜單欄上單擊【組長】|【組長批閱組員作業】菜單,出現【組長批閱組員作業】界面,如附圖15所示,雙擊題目區進行該題批閱。(2) 瀏覽組員完成作業情況在菜單欄上單擊【組長】|【瀏覽組員完成作業情況】菜單,出現【瀏覽組員完成作業情況】界面,如圖16所示。 附圖15 組長批閱組員作業 附圖16 瀏覽組員完成作業情況 其他界面(1) 瀏覽作業信息在菜單欄

34、上單擊【公共】|【瀏覽作業信息】菜單,出現【瀏覽作業信息】界面,如附圖17所示。(2) 關于軟件 附圖17 瀏覽作業信息 附圖18 關于軟件本軟件已在教學實踐中進行了驗證,系統運行穩定可靠。附錄2 SQL上機考試與閱卷系統為了便于老師有效地組織本課程的畢業考試和本書第11章數據庫的安全性的教學而研制了本軟件系統。建議在本課程教學進度完成三分之二時,安裝本系統組織同學進行模擬考試,將考試變成促進同學掌握SQL知識的手段。用戶有兩大類:監考教師和學生。教師從題庫中(16份試題)通過隨機等方式為同學們發放試題;學生通過上機方式完成試卷,并將其結果提交到數據庫中;教師再從數據庫中取出試卷進行閱卷(其中

35、選擇題、判斷題、填空題自動批閱)并匯總學生考試成績,以減輕考試的工作量。2.1 系 統 設 計2.1.1 數據表設計(1) 學生信息表序號字段名類型寬度null主鍵/外鍵1學號char10*2姓名nchar5not null3性別nchar1not null性別 in ('女', '男')4卷號char1null5座號char16null考試計算機的IP地址6班級char16not null7身份證號char18not null8宿舍電話char109手機號碼char 1610照片image示例數據如下:學號姓名性別班級身份證號100001高翔男03網絡3班10

36、0002白云女03網絡3班100003康健男03網絡3班100004黨生男03網絡3班100005華麗女03網絡3班100006歐陽芙蓉女03網絡3班(2) 試題信息表序號字段名類型寬度null主鍵/外鍵1題號char20not null*2題型nchar3not null題型表(題型)3題目varchar12null4問題varchar255null5參考答案varchar255null6應得分int(3) 試卷完成表序號字段名類型寬度null主鍵/外鍵1學號char10not null學生信息表(學號)2題號char20not null作業信息表(題號)3答案varchar2554結果圖I

37、mage5提交時間datetime6提交機器char167批語char2559分數Int10批閱時間datetimeUNIQUE(學號,題號)(4) 參數表序號字段名類型寬度null1開考時間datetimenull2收卷時間datetimenull3老師姓名nchar10not null2.1.2 數據視圖設計教師批閱試卷視圖(學號,姓名,性別,班級,題號,題型,題目,問題,參考答案,應得分,答案,結果圖,提交時間,提交機器,批語,分數,批閱時間,未答,未閱,問答,問答閱)2.1.3 存儲過程設計(1) p學生查詢個人試卷只有在學號、座號正確的前提下返回學生自己的試卷信息:題目,未答,問答,

38、題號,題型,問題,答案,不能看到其他同學的答案或閱卷用的參考答案。create procedure p學生查詢個人試卷學號 char(10),座號 char(15) asbegin set 學號 = rtrim(學號) select 題目, 未答, 問答, 題號, 題型, 問題, 答案 from dbo.教師批閱試卷視圖 where rtrim(學號) in ( select 學號 from 學生信息表 where rtrim(學號) = 學號 and rtrim(座號) = 座號) order by 題號end(2) p學生提交試卷答案只有在學號、座號、密碼正確的前提下保存學生自己的答案、提

39、交時間、提交機器的IP號,并返回ok,否則返回no。create procedure p學生提交試卷答案 學號 char(10),題號 char(20), 答案 varchar(255), 座號 char(16), 結果 char(2) output asbegin set 學號 = rtrim(學號) if exists( select 學號 from 學生信息表 where rtrim(學號) = 學號 and 座號 = 座號 ) begin update 試卷完成表 set 答案 = 答案, 提交時間 = getdate(), 提交機器 = 座號 where (學號 = 學號) and

40、(題號 = 題號); set 結果 = 'ok' end else set 結果 = 'no'end2.1.4 登錄賬戶和數據庫用戶設計登錄名/角色名描述dbo服務器管理員sa,具有服務器和本數據庫的所有權限SQL考試客戶只用來登錄,登錄后用戶成為相應的老師或學生SQL考試教師設置為數據庫的所有者角色,具有本數據庫的所有權限sqltest100001學號為100001的學生登錄賬戶考生(角色)所有考生都是這個角色的成員,只能進行個人答卷,不可查詢別人的答案或標準答案2.1.5 安全性設計所有學生均以SQL考試學生身份登錄服務器,然后以學生信息表的學號、座位、密碼

41、在指定機器查看自己的試卷,提交自己的答案。用戶/角色名權限描述SQL考試客戶只可查詢參數表和學生信息表中學號、姓名、座號、身份證號、照片字段,填寫學生信息表中的座號考生(角色)只可查詢參數表和執行p學生查詢個人試卷、p學生提交試卷答案SQL考試教師數據庫的所有者角色,具有本數據庫的所有權限,但不能修改試卷完成表中的答案、結果圖、提交時間和提交機器的內容dbo服務器管理員sa,具有服務器和本數據庫的所有權限2.1.6 登錄賬戶建立- 賬戶初始化.sqluse SQL考試數據庫go-建立SQL考試客戶登錄賬戶、數據庫用戶if exists (select * from master.dbo.sys

42、logins where loginname = 'SQL考試客戶') exec sp_droplogin 'SQL考試客戶'exec sp_addlogin 'SQL考試客戶', '2005', 'SQL考試數據庫', '簡體中文'if exists (select * from dbo.sysusers where name = N'SQL考試客戶' and uid < 16382) exec sp_revokedbaccess N'SQL考試客戶'exec

43、 sp_grantdbaccess N'SQL考試客戶', N'SQL考試客戶'grant select on dbo.參數表 to SQL考試客戶grant select on dbo.學生信息表 (學號, 姓名, 座號, 班級, 照片, 身份證號) to SQL考試客戶guant update on dbo.學生信息表 (座號) to SQL考試客戶-建立SQL考試教師登錄賬戶、數據庫用戶if exists (select * from master.dbo.syslogins where loginname = N'SQL考試教師') ex

44、ec sp_droplogin N'SQL考試教師'exec sp_addlogin N'SQL考試教師', '22', N'SQL考試數據庫',N'簡體中文'exec sp_addsrvrolemember N'SQL考試教師', sysadminexec sp_addsrvrolemember N'SQL考試教師', securityadminif exists (select * from dbo.sysusers where name = N'SQL考試教師'

45、 and uid < 16382) exec sp_revokedbaccess N'SQL考試教師'exec sp_grantdbaccess N'SQL考試教師', N'SQL考試教師'exec sp_addrolemember N'db_owner', N'SQL考試教師'exec sp_addrolemember N'db_securityadmin', N'SQL考試教師'deny update on dbo.試卷完成表 (答案, 結果圖, 提交時間, 提交機器) t

46、o SQL考試教師 cascade -建立考生角色if not exists (select * from dbo.sysusers where name = N'考生' and uid > 16399) exec sp_addrole N'考生'grant select on dbo.參數表 to 考生grant execute on dbo.p學生查詢個人試卷 to 考生grant execute on dbo.p學生提交試卷答案 to 考生2.1.7 功能(菜單)設計編程語言PowerBuilder,系統總控模塊(菜單)與各功能模塊調用關系如下。2.

47、2 系 統 使 用2.2.1 系統安裝運行環境:操作系統Windows 2000及以上版本與數據庫服務器SQL Server2000。數據庫安裝:(1) 在安裝SQL Server2000服務器的計算機上執行自解壓縮包:SQL上機考試與閱卷系統.exe進行安裝, 默認安裝目錄:e: SQL上機考試與閱卷系統。(2) 在企業管理器中,附加自解壓釋放在安裝目錄的數據庫文件:數據庫SQL考試數據庫.mdf、數據庫SQL考試數據庫_log.ldf。(3) 在查詢分析器中用sa身份運行賬戶初始化.sql腳本文件設置賬戶。客戶端安裝:(1) 在安裝目錄的客戶端子目錄下,雙擊PBCLTRT90.msi安裝P

48、owerBuilder的運行庫。(2) 在安裝目錄的客戶端子目錄下,修改配置文件:config.ini中成為數據庫服務器的IP地址。(3) 將安裝目錄的子目錄客戶端共享,在網絡中每臺考試客戶端復制安裝目錄的客戶端子目錄的內容,雙擊PBCLTRT90.msi安裝PowerBuilder的運行庫,雙擊sql_test.exe運行本軟件。2.2.2 系統使用(1) 系統登錄在桌面單擊【SQL上機考試與閱卷系統】快捷圖標,出現如附圖2.1所示的登錄界面,用戶類型有:學生、老師。老師初始口令:22,學生初始口令:學號,口令可自行修改。輸入口令后出現如附圖2.2所示的主界面。 附圖2.1 登錄界面 附圖2

49、.2 系統主界面(2) 教師設置以教師身份登錄系統,在系統菜單欄上單擊【教師】|【設置學生信息】菜單,出現如附圖2.3所示的學生信息維護界面。在系統菜單欄上單擊【教師】|【設定考試參數】菜單,出現如附圖2.4所示的設定考試參數界面:設置考試時間、確定考試座位、發放試題等。 附圖2.3 設置學生信息 附圖2.4 設置考試信息(3) 學生考試以學生身份登錄系統,如附圖2.5所示。在系統菜單欄上單擊【學生】、【上機完成提交試卷】菜單,出現如附圖2.6所示的學生上機完成提交試卷界面。 附圖2.5 學生登錄界面 附圖2.6 學生上機考試(4) 教師批閱以教師身份登錄系統,在系統菜單欄上單擊【教師】|【教師批閱試卷】菜單,出現如附圖2.7所示的教師批閱試卷界面。其中:選擇題、判斷題、填

溫馨提示

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

評論

0/150

提交評論