版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、SQL Server數(shù)據(jù)庫(kù)教案第1章 SQL Server 的安裝和配置一、教學(xué)目標(biāo):1. 了解課程要求。2. 了解SQL Server 的發(fā)展和特點(diǎn)。3. 了解SQL Server 的安裝和配置。4.了解系統(tǒng)數(shù)據(jù)庫(kù)和系統(tǒng)表的作用.4. 了解SQL Server 的9個(gè)常用工具。二、教學(xué)重點(diǎn)和難點(diǎn):重點(diǎn):熟悉企業(yè)管理器及查詢分析器難點(diǎn):系統(tǒng)數(shù)據(jù)庫(kù)和系統(tǒng)表的作用三、教學(xué)方法及手段:注重實(shí)例分析,采用一次理論一次實(shí)驗(yàn)的教學(xué)方式。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容:1、課程要求簡(jiǎn)介:共90課時(shí),分為兩部分,課堂教學(xué)45課時(shí),實(shí)驗(yàn)教學(xué)45課時(shí);課程培養(yǎng)目標(biāo):通過本課程的學(xué)習(xí)
2、,掌握 SQL Server 環(huán)境下進(jìn)行編程的知識(shí),具備利用 SQL Server 進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用程序開發(fā)的基本能力;考核要求(5分鐘) 2、SQL Server的定義:是一個(gè)高性能的C/S結(jié)構(gòu)的RDBMS,是為支持高容量的事務(wù)處理(如在線訂購(gòu)錄入、存貨目錄、記帳或支付)以及數(shù)據(jù)倉(cāng)庫(kù)和決策支持系統(tǒng)而設(shè)計(jì)的。3、SQL Server 的發(fā)展、特點(diǎn)和新特性。4、SQL Server 的安裝和配置。(操作演示一部分安裝過程;30分鐘)5、了解系統(tǒng)數(shù)據(jù)庫(kù)和系統(tǒng)表的作用:主數(shù)據(jù)庫(kù)master、msdb、pubs等。演示:打開企業(yè)管理器,展開服務(wù)器,詳細(xì)分析各個(gè)系統(tǒng)數(shù)據(jù)庫(kù)和系統(tǒng)表6、了解SQL Serve
3、r 的主要管理工具,熟悉企業(yè)管理器、查詢分析器。(1)講授SQL Server 的主要管理工具,分別打開九個(gè)工具,演示分析企業(yè)管理器的功能。演示:打開企業(yè)管理器,展開服務(wù)器,新建一個(gè)數(shù)據(jù)庫(kù)sales。注意:可以由教師講解,同時(shí)學(xué)生操作演示再創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)。(2)分析查詢分析器的使用方法,演示打開查詢分析器的兩種方法。例:在查詢分析器地命令行窗口中輸入如下的SQL語(yǔ)句:use pubsselect * from jobs(3)了解SQL Server 服務(wù)管理器的使用方法。(4)掌握創(chuàng)建SQL Server服務(wù)器組的方法及注冊(cè)SQL Server服務(wù)器的方法。注意:如果該服務(wù)器已成功注冊(cè),則顯示
4、具有改名稱的服務(wù)器已存在,如果該服務(wù)器不能成功注冊(cè),則可能該服務(wù)器的服務(wù)沒有啟動(dòng),或者是現(xiàn)在的用戶沒有權(quán)限注冊(cè)該服務(wù)器。(5)打開服務(wù)器網(wǎng)絡(luò)實(shí)用工具和客戶端網(wǎng)絡(luò)使用工具,分析它們的功能。(6)演示打開聯(lián)機(jī)幫助文檔的三種方法。如:SHIFT+F1;選擇菜單欄“幫助”等。7、小結(jié)8、思考及練習(xí)第2章 SQL Server 數(shù)據(jù)類型一、教學(xué)目標(biāo):1.掌握各種數(shù)據(jù)類型的特點(diǎn)和基本用法2.學(xué)會(huì)創(chuàng)建和刪除用戶自定義數(shù)據(jù)類型二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):掌握各種數(shù)據(jù)類型的用法教學(xué)難點(diǎn):用戶自定義數(shù)據(jù)類型的創(chuàng)建三、教學(xué)方法及手段:采用互動(dòng)式教學(xué)方法,理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)
5、容:1、復(fù)習(xí)上次課內(nèi)容,詳細(xì)分析25個(gè)系統(tǒng)數(shù)據(jù)類型(50分鐘)在絕大多數(shù)編程環(huán)境中,數(shù)據(jù)類型由系統(tǒng)定義,這類數(shù)據(jù)類型通常稱之為系統(tǒng)數(shù)據(jù)類型。字符數(shù)據(jù)的類型:Char,Varchar和Text數(shù)值型數(shù)據(jù)類型:bigint,int,smallint,tinyint,decimal,numeric,float和real貨幣型數(shù)據(jù)類型:Money和Smallmoney時(shí)間日期數(shù)據(jù)類型: Datetime 和 Smalldatetime二進(jìn)制數(shù)據(jù)類型:Binary(固定長(zhǎng)度)和Varbinary (可變長(zhǎng)度)2、創(chuàng)建用戶自定義數(shù)據(jù)類型用戶定義的數(shù)據(jù)類型基于在
6、60;Microsoft SQL Server 中提供的數(shù)據(jù)類型。當(dāng)幾個(gè)表中必須存儲(chǔ)同一種數(shù)據(jù)類型時(shí),并且為保證這些列有相同的數(shù)據(jù)類型、長(zhǎng)度和可空性時(shí),可以使用用戶定義的數(shù)據(jù)類型。請(qǐng)看例子例2.1 Use NorthwindExec sp_addtype uname,'Varchar(8)', 'Not Null '例2.2 Use Sales Exec sp_addtype telephone,'varchar(24) ','Not Null'Exec sp_
7、addtype fax,'varchar(24)','Null'3、刪除用戶定義的數(shù)據(jù)類型sp_droptype注意:當(dāng)表中的列還正在使用用戶定義的數(shù)據(jù)類型時(shí),或者在其上面還綁定有默認(rèn)或者規(guī)則時(shí),這種用戶定義的數(shù)據(jù)類型不能刪除。4、小結(jié):本章重點(diǎn)介紹了SQL Server 數(shù)據(jù)類型的分類、使用方法和使用時(shí)的注意事項(xiàng)。課本19頁(yè)表2.1列出了SQL Server常見的數(shù)據(jù)類型。5、課堂練習(xí):創(chuàng)建一個(gè)數(shù)據(jù)類型,要求其為字符型,最大長(zhǎng)度為12,不允許為空。第3章 數(shù)據(jù)庫(kù)和數(shù)據(jù)表一、教學(xué)目標(biāo):1、了解數(shù)據(jù)庫(kù)的兩種存儲(chǔ)結(jié)構(gòu),以及文件和文件組的概念。2、掌握創(chuàng)建數(shù)據(jù)庫(kù)的三種
8、方法。3、學(xué)會(huì)修改數(shù)據(jù)庫(kù)的屬性和刪除數(shù)據(jù)庫(kù)。2、掌握創(chuàng)建表的兩種方法。3、掌握創(chuàng)建、刪除和修改約束的方法。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):設(shè)計(jì)和創(chuàng)建各種約束教學(xué)難點(diǎn):文件和文件組的概念三、教學(xué)方法及手段:注重實(shí)例,采用一次理論一次實(shí)驗(yàn)的教學(xué)方法。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容:1、復(fù)習(xí)第二章內(nèi)容。2、數(shù)據(jù)庫(kù)由數(shù)據(jù)庫(kù)文件(數(shù)據(jù)和對(duì)象)和事務(wù)日志文件(操作日志)組成,一個(gè)數(shù)據(jù)庫(kù)至少應(yīng)該包含一個(gè)數(shù)據(jù)庫(kù)文件和一個(gè)事務(wù)日志文件。主文件.mdf、輔助文件.ndf、事務(wù)日志文件.ldf3、創(chuàng)建數(shù)據(jù)庫(kù)的過程實(shí)際上就是為數(shù)據(jù)庫(kù)設(shè)計(jì)名稱、設(shè)計(jì)所占用的存儲(chǔ)空間和存放文件位置的過程等。
9、演示操作: A使用向?qū)?chuàng)建數(shù)據(jù)庫(kù) B使用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫(kù) C使用Transact-SQL語(yǔ)言創(chuàng)建數(shù)據(jù)庫(kù)思考:請(qǐng)學(xué)生上講臺(tái)完成:使用默認(rèn)參數(shù)用Transact-SQL語(yǔ)言創(chuàng)建數(shù)據(jù)庫(kù)。4、修改數(shù)據(jù)庫(kù)的方法:重命名、收縮數(shù)據(jù)庫(kù)等。如:exec sp_renamedb 舊名,新名 5、表是包含數(shù)據(jù)庫(kù)中所有數(shù)據(jù)的數(shù)據(jù)庫(kù)對(duì)象,用來存儲(chǔ)各種各樣的信息。(30分鐘)演示操作:A、利用企業(yè)管理器創(chuàng)建表 實(shí)例:創(chuàng)建employees員工表 B、利用Transact-SQL語(yǔ)言創(chuàng)建表 實(shí)例:創(chuàng)建goods進(jìn)貨表注意:請(qǐng)學(xué)生上講臺(tái)完成教材36頁(yè)sell表的建立。6、約束是SQL Server提供的自動(dòng)保持?jǐn)?shù)據(jù)庫(kù)完
10、整性的一種方法。分析5種約束類型。分別使用2種方法創(chuàng)建以下約束:(40分鐘)主鍵約束、唯一性約束、檢查約束、默認(rèn)約束、外鍵約束關(guān)鍵字分別為:primary key、unique、check、default、foreign key。提示:教師講解結(jié)束,請(qǐng)學(xué)生為sales數(shù)據(jù)庫(kù)的各個(gè)表設(shè)計(jì)并創(chuàng)建各種約束。7、分別使用2種方法增加、刪除和修改employees的字段。8、查看表、刪除表的演示操作。9、小結(jié)10、課后作業(yè) 課本50頁(yè)本章習(xí)題16、17、18題。第4章 數(shù)據(jù)庫(kù)的查詢一、教學(xué)目標(biāo):1、掌握如何使用update、insert、delete命令操作表中數(shù)據(jù)。2、掌握使用 Select 語(yǔ)句查詢
11、數(shù)據(jù)的方法。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):多表聯(lián)接查詢教學(xué)難點(diǎn):嵌套查詢的使用三、教學(xué)方法及手段:采用互動(dòng)式教學(xué)方法。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):6課時(shí)五、教學(xué)基本內(nèi)容:1、 復(fù)習(xí)上次課內(nèi)容2、 請(qǐng)學(xué)生上講臺(tái)演示:為t_student輸入相應(yīng)數(shù)據(jù),并修改和刪除數(shù)據(jù)。提問思考:如何使用語(yǔ)句命令的方法完成學(xué)生演示的數(shù)據(jù)操作?3、SELECT語(yǔ)句能夠從數(shù)據(jù)庫(kù)中檢索出符合用戶需求的數(shù)據(jù),并將結(jié)果以表格的形式返回,是SQL Server中使用最頻繁的語(yǔ)句之一。它功能強(qiáng)大,所以也有較多的子句,包含主要子句的基本語(yǔ)法結(jié)構(gòu)如下:SELECT 列名1 ,列名2 . INTO 新表名 FROM 表名1
12、 ,表名2 . WHERE 條件 GROUP BY 列名列表 HAVING 條件 ORDER BY 列名列表 ASC | DESC 針對(duì)student數(shù)據(jù)庫(kù)的3個(gè)表,舉例,詳細(xì)分析SELECT語(yǔ)句的各個(gè)子句。重點(diǎn)分析以下幾方面的問題:l 如何選擇表中的列,列的別名,生成新的數(shù)據(jù)表等;l 使用ORDER BY子句,進(jìn)行數(shù)據(jù)排序;l 使用比較運(yùn)算符、邏輯運(yùn)算符和LIKE、IN、BETWEEN等關(guān)鍵字過濾查詢結(jié)果;l 使用聚合函數(shù),例如COUNT、AVG、MAX、MIN、SUN等匯總數(shù)據(jù);l 使用分組子句GROUP BY和HAVING,使用分組計(jì)算子句COMPUTE和COMPUTE BY;l 聯(lián)接查
13、詢的五種類型:內(nèi)聯(lián)接、左外聯(lián)接、右外聯(lián)接、完全外部聯(lián)接、交叉聯(lián)接;l 使用UNION操作符,掌握聯(lián)合查詢的方法;l 使用嵌套查詢的方法。4、用update、insert、delete命令操作表中數(shù)據(jù)。提問:A、update語(yǔ)句中沒有where會(huì)如何? B、insert語(yǔ)句中沒有字段名和有字段名的區(qū)別? C、delete語(yǔ)句中沒有where語(yǔ)句會(huì)如何?5、根據(jù)查詢結(jié)果的不同將聯(lián)接查詢分為五種類型:內(nèi)聯(lián)接、左外聯(lián)接、右外聯(lián)接、完全外部聯(lián)接、交叉聯(lián)接。舉例詳細(xì)分析各種類型。6、嵌套查詢又叫子查詢,嵌套查詢是指在一個(gè)SELECT語(yǔ)句的WHERE子句或HAVING子句中,又嵌套有另外一個(gè)SELECT語(yǔ)句
14、的查詢。嵌套查詢中上層的SELECT語(yǔ)句塊稱為父查詢或外層查詢,下層的SELECT語(yǔ)句塊稱為子查詢或內(nèi)層查詢。例子:SELECT * FROM employees WHERE 編號(hào)=ANY (SELECT 進(jìn)貨員工編號(hào) FROM goods)注意:詳細(xì)分析any和all的區(qū)別。7、小結(jié)8、課堂練習(xí)(50分鐘)教材7172頁(yè)本章習(xí)題注意:先由學(xué)生做課堂練習(xí),后教師詳細(xì)講解第5章 索引及數(shù)據(jù)完整性一、教學(xué)目標(biāo):1.了解索引的定義、優(yōu)點(diǎn)和分類2.掌握創(chuàng)建、修改和刪除索引的方法3.理解數(shù)據(jù)完整性的概念二、教學(xué)重點(diǎn)和難點(diǎn):重點(diǎn):使用語(yǔ)句創(chuàng)建索引;難點(diǎn):聚集索引及非聚集索引的理解。三、教學(xué)方法及手段:注重
15、實(shí)例,理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容: 1、復(fù)習(xí)。(5分鐘)2、數(shù)據(jù)庫(kù)中的索引是一個(gè)列表,在這個(gè)列表中包含了某個(gè)表中一列或者若干列值的集合,以及這些值的記錄在數(shù)據(jù)表中的存儲(chǔ)位置的物理地址。優(yōu)點(diǎn):可以大大加快數(shù)據(jù)檢索速度可以保證數(shù)據(jù)記錄的唯一性等。3、索引的分類:clustered、nonclustered、復(fù)合索引、唯一索引注意:舉例書本目錄,分析聚集索引及非聚集索引的區(qū)別4、創(chuàng)建索引的三種方法:A、使用企業(yè)管理器創(chuàng)建索引,舉例:為employees表創(chuàng)建索引I_電話。B、使用Transact-SQL語(yǔ)句創(chuàng)建索引,實(shí)例:在goods表創(chuàng)建索引I_進(jìn)貨時(shí)間。C、使
16、用向?qū)?chuàng)建視圖5、查看、修改和刪除索引 注意:刪除索引時(shí),索引前應(yīng)注明表名。如drop index t_student.I_number, t_student.I_name6、索引的分析及維護(hù)創(chuàng)建索引后,必須對(duì)索引進(jìn)行維護(hù),確保索引的統(tǒng)計(jì)信息是的有效的,才能夠提高查找速度。隨著更新操作不斷的執(zhí)行,數(shù)據(jù)會(huì)變得支離破碎,這些數(shù)據(jù)碎片會(huì)導(dǎo)致額外的頁(yè)讀取,防礙數(shù)據(jù)的并行掃描。應(yīng)該定期整理索引清除數(shù)據(jù)碎片,提高數(shù)據(jù)讀取的性能。7、數(shù)據(jù)完整性為了維護(hù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)和現(xiàn)實(shí)世界的一致性,SQL Server提供了確保數(shù)據(jù)庫(kù)的完整性的技術(shù)。數(shù)據(jù)完整性是指存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)的一致性和準(zhǔn)確性。數(shù)據(jù)完整性有3中類型
17、:域完整性、實(shí)體完整性和參照完整性。8、小節(jié)l 為什么要使用索引,索引的特點(diǎn)是什么;l 索引分類的依據(jù)是什么,了解各種索引的區(qū)別;l 掌握創(chuàng)建索引的三種方法,在創(chuàng)建索引的過程中如何設(shè)定其屬性和參數(shù);l 掌握刪除和修改索引的方法;l 了解數(shù)據(jù)完整性的概念和分類;l 了解數(shù)據(jù)庫(kù)完整性和約束的關(guān)系;l 掌握實(shí)現(xiàn)域完整性、實(shí)體完整性和引用完整性的各種方法。9、課堂練習(xí)課本84頁(yè)本章習(xí)題第7章 視圖一、教學(xué)目標(biāo):1、了解視圖和數(shù)據(jù)表之間的區(qū)別、視圖的優(yōu)點(diǎn)。2、掌握創(chuàng)建、修改和刪除視圖的方法。3、掌握通過視圖修改數(shù)據(jù)表的方法。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):使用命令創(chuàng)建視圖;教學(xué)難點(diǎn):如何通過視圖修改數(shù)據(jù)表
18、。三、教學(xué)方法及手段:采用互動(dòng)式教學(xué)方法。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容:1、復(fù)習(xí):使用命令查詢所有男學(xué)生的姓名、年齡、選修課程、成績(jī)。(請(qǐng)學(xué)生上講臺(tái)演示,5分鐘)select t_student.s_name 姓名,year(getdate()-year(birthday) 年齡,t_course.c_name 課程名稱,t_score.score 成績(jī) from t_student,t_course,t_scorewhere t_student.s_number=t_score.s_number and t_course.c_number=t_score.c
19、_number如果在以上程序前加命令:CREATE VIEW a AS,則可以生成一個(gè)虛擬的表視圖。 2、由以上引導(dǎo)出視圖的概念:是從一個(gè)或者多個(gè)數(shù)據(jù)表或視圖中導(dǎo)出的虛表,它的結(jié)構(gòu)和數(shù)據(jù)是對(duì)數(shù)據(jù)表進(jìn)行查詢的結(jié)果。3、視圖的優(yōu)點(diǎn)視點(diǎn)集中、簡(jiǎn)化操作、定制數(shù)據(jù)、合并分割數(shù)據(jù)、安全性4、創(chuàng)建視圖的三種方法:A、使用企業(yè)管理器創(chuàng)建視圖。例如,現(xiàn)在需要建立一個(gè)視圖,通過該視圖能夠方便快捷地知道筆記本電腦的銷售情況,則可以將sell和goods兩張表同時(shí)添加到視圖中,在表sell中選擇“所有列”復(fù)選框,同時(shí)在表goods中選擇“商品名稱”字段對(duì)應(yīng)的復(fù)選框。B、使用Transact-SQL語(yǔ)句創(chuàng)建視圖,例如,
20、創(chuàng)建一個(gè)新視圖v1,要求基表選擇goods,sell,employees,來源字段為sell表中的銷售編號(hào)、商品編號(hào)和數(shù)量;goods表中的商品名稱;employees表中編號(hào)和姓名,要求查詢采購(gòu)部的趙飛燕所采購(gòu)商品的銷售情況C、使用向?qū)?chuàng)建視圖。5、修改和重命名視圖6、掌握通過視圖修改數(shù)據(jù)表的方法,使用時(shí)應(yīng)該注意以下幾點(diǎn):l 修改視圖中的數(shù)據(jù)時(shí)每次都只能影響一個(gè)基表。l 不能修改那些通過計(jì)算得到的字段。l 如果視圖引用多個(gè)表時(shí),無法用DELETE命令刪除數(shù)據(jù),若使用UPDATE命令則應(yīng)及INSERT操作一樣,被更新的列必須屬于同一個(gè)表。l 執(zhí)行UPDATE、DELETE命令時(shí),所刪除及更新的
21、數(shù)據(jù)必須包含在視圖的結(jié)果集中。l 如果在創(chuàng)建視圖時(shí)指定了WITH CHECK OPTION選項(xiàng),那么所有使用視圖修改數(shù)據(jù)庫(kù)信息時(shí),必須保證修改后的數(shù)據(jù)滿足視圖定義的范圍。7、舉例:使用視圖查詢、修改數(shù)據(jù)8、小結(jié)9、課堂小練習(xí)。(10分鐘)第7章 Transact-SQL程序設(shè)計(jì)一、教學(xué)目標(biāo):1、了解批處理、全局及局部變量的概念。2、掌握常用運(yùn)算符及其優(yōu)先級(jí)、常用函數(shù)的格式及用法。3、 掌握流程控制語(yǔ)句的種類及用法。4、 掌握游標(biāo)的使用二、教學(xué)重點(diǎn)和難點(diǎn):重點(diǎn):流程控制語(yǔ)句的使用難點(diǎn):打開和使用游標(biāo)三、教學(xué)方法及手段:注重舉例,理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容: 1
22、、兩個(gè)GO之間的SQL語(yǔ)句作為一個(gè)批處理。兩種類型的注釋字符:?jiǎn)涡凶⑨專菏褂脙蓚€(gè)連在一起的減號(hào)“- -”作為注釋符多行注釋:使用“/* */”作為注釋符 2、全局變量及局部變量的區(qū)別,定義局部變量的關(guān)鍵字為declare。3、以復(fù)習(xí)方式提問:運(yùn)算符及其優(yōu)先級(jí)。4、系統(tǒng)函數(shù)、時(shí)間日期函數(shù)(如:Day( ), getdate( ), month( ), year( ))、數(shù)學(xué)函數(shù)、轉(zhuǎn)換函數(shù)(如:cast、convert)等等。舉例:函數(shù)GETDATE()可以獲得當(dāng)前的日期和時(shí)間,使用YEAR(GETDATE())可以獲得當(dāng)年的年份,使用YEAR(birthday)可以獲得學(xué)生的出生年份。提問:如何
23、通過出生年月字段求學(xué)生年齡?5、流程控制語(yǔ)句使用T-SQL語(yǔ)言編程的時(shí)候,常常要利用各種流程控制語(yǔ)句去進(jìn)行順序、分支控制轉(zhuǎn)移、循環(huán)等操作。T-SQL提供了一組流程控制語(yǔ)句,包括:條件控制語(yǔ)句、無條件控制語(yǔ)句、循環(huán)語(yǔ)句和返回狀態(tài)值給調(diào)用例程的語(yǔ)句等。如:BEGINEND語(yǔ)句塊、IFELSE語(yǔ)句、WHILE語(yǔ)句、CASE語(yǔ)句、GOTO語(yǔ)句、RETURN語(yǔ)句、WAITFOR語(yǔ)句注意:通過教材例子詳細(xì)分析流程控制語(yǔ)句6、使用游標(biāo)通常情況下,關(guān)系數(shù)據(jù)庫(kù)中的操作總會(huì)對(duì)整個(gè)記錄集產(chǎn)生影響,而在實(shí)際應(yīng)用中,應(yīng)用程序有時(shí)只需要每次處理一條或一部分記錄。在這種情況下,就需要使用游標(biāo)在服務(wù)器內(nèi)部處理結(jié)果集,游標(biāo)可視
24、為一種特殊的指針,它不但可以定位在結(jié)果集的特定記錄上,還可以從結(jié)果集的當(dāng)前位置查詢一條或多條記錄并對(duì)讀取到的數(shù)據(jù)進(jìn)行處理。使用游標(biāo)要遵循以下順序:聲明游標(biāo)打開游標(biāo)讀取數(shù)據(jù)關(guān)閉游標(biāo)刪除游標(biāo)7、(20分鐘)思考及練習(xí):教材141頁(yè)第6題。學(xué)生課堂練習(xí)后,教師詳細(xì)講解。8、小結(jié)9、課后思考題(1)用一條查詢語(yǔ)句從下列表中找出所有課程分?jǐn)?shù)大于80分的學(xué)生姓名。Name kecheng fenshu 張三 語(yǔ)文 92張三 數(shù)學(xué) 75王五 語(yǔ)文 80王五 數(shù)學(xué) 85王五 英語(yǔ) 91李四 語(yǔ)文 100李四 數(shù)據(jù) 79(2)刪除除了自動(dòng)編號(hào)不同以外所有都相同的冗余記錄自動(dòng)編號(hào) 學(xué)號(hào) 姓名 課程編號(hào) 分?jǐn)?shù)1 9
25、9001 張三 D001 902 99002 李四 D001 893 99001 張三 D001 90第8章 存儲(chǔ)過程一、教學(xué)目標(biāo):1、了解存儲(chǔ)過程的優(yōu)點(diǎn)和分類。2、掌握創(chuàng)建、修改和刪除存儲(chǔ)過程的方法。3、學(xué)會(huì)使用存儲(chǔ)過程。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):使用命令創(chuàng)建存儲(chǔ)過程教學(xué)難點(diǎn):帶參數(shù)的存儲(chǔ)過程三、教學(xué)方法及手段:注重實(shí)例,采用一次理論一次實(shí)驗(yàn)的教學(xué)方法。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容: 1、復(fù)習(xí),分析上次課布置的“課后思考題”。(10分鐘) 2、在使用Transact-SQL語(yǔ)言編程的過程中,我們可以將某些需要多次調(diào)用的實(shí)現(xiàn)某個(gè)特定任務(wù)的代碼段編寫成一個(gè)過
26、程,將其保存在數(shù)據(jù)庫(kù)中,并由SQL Server服務(wù)器通過過程名來調(diào)用它們,這些過程就叫做存儲(chǔ)過程。3、存儲(chǔ)過程的分類 A、系統(tǒng)存儲(chǔ)過程:sp_help、sp_helptext、sp_dependsB、用戶自定義存儲(chǔ)過程:簡(jiǎn)單實(shí)例CREATE PROC dbo.Os AS SELECT * FROM t_score WHERE score< 604、創(chuàng)建存儲(chǔ)過程的三種方法:A、使用企業(yè)管理器創(chuàng)建存儲(chǔ)過程,實(shí)例:創(chuàng)建一個(gè)存儲(chǔ)過程pro_emp,用于顯示employes表的所有信息。B、使用Transact-SQL語(yǔ)句創(chuàng)建存儲(chǔ)過程,實(shí)例:創(chuàng)建一個(gè)帶有輸入?yún)?shù)的存儲(chǔ)過程proc_goods,查
27、詢指定員工所進(jìn)商品信息。創(chuàng)建和執(zhí)行存儲(chǔ)過程的腳本內(nèi)容如下:USE SalesGOCREATE PROC proc_goods員工編號(hào) char(6)='1001'ASSELECT 商品編號(hào),商品名稱,生產(chǎn)廠商,進(jìn)貨價(jià),零售價(jià),數(shù)量,進(jìn)貨時(shí)間 FROM Goods WHERE 進(jìn)貨員工編號(hào)=員工編號(hào)課堂練習(xí):創(chuàng)建一個(gè)帶有輸入和輸出參數(shù)的存儲(chǔ)過程proc_GNO,查詢指定廠商指定名稱的商品所對(duì)應(yīng)的商品編號(hào)。C、使用向?qū)?chuàng)建存儲(chǔ)過程。5、 執(zhí)行存儲(chǔ)過程。-執(zhí)行存儲(chǔ)過程,查詢1001號(hào)員工所進(jìn)的商品的信息EXEC proc_goods 員工編號(hào)=default-或EXEC proc_g
28、oods 員工編號(hào)='1001'6、 執(zhí)行字符串本例是用EXECUTE語(yǔ)句執(zhí)行字符串的示例。USE SalesGODECLARE sqlstr VARCHAR(40)SET sqlstr='SELECT * FROM Employees ORDER BY 姓名 'EXEC(sqlstr)7、思考:課本131頁(yè)本章習(xí)題8、小結(jié)第九章 觸發(fā)器一、教學(xué)目標(biāo):1、理解觸發(fā)器的概念以及分類。2、掌握創(chuàng)建觸發(fā)器的兩種方法以及觸發(fā)器的使用、修改和刪除。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):根據(jù)實(shí)際如何選擇不同類型的觸發(fā)器;教學(xué)難點(diǎn):觸發(fā)器中臨時(shí)表inserted及deleted的使用
29、。三、教學(xué)方法及手段:注重實(shí)例,采用一次理論一次實(shí)驗(yàn)的教學(xué)方法。理論教學(xué)使用多媒體投影室。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容: 1、復(fù)習(xí),然后由存儲(chǔ)過程的定義及優(yōu)點(diǎn)引出觸發(fā)器的定義,觸發(fā)器及一般存儲(chǔ)過程的區(qū)別:一般的存儲(chǔ)過程通過存儲(chǔ)過程名稱被直接調(diào)用,而觸發(fā)器主要是通過事件進(jìn)行觸發(fā)而被執(zhí)行。(5分鐘)2、觸發(fā)器的優(yōu)點(diǎn):級(jí)聯(lián)修改數(shù)據(jù)庫(kù)中相關(guān)的表;實(shí)現(xiàn)比CHECK約束更為復(fù)雜的約束操作;拒絕或回滾違反引用完整性的約束操作;比較表修改前后數(shù)據(jù)之間的差別,并根據(jù)差別采取相應(yīng)的操作。3、觸發(fā)器的兩種類型(舉例,詳細(xì)分析兩者的區(qū)別)(1)AFTER觸發(fā)器:將在數(shù)據(jù)變動(dòng)(INSERT、UPDATE和DEL
30、ETE操作)完成后才被激發(fā)。對(duì)變動(dòng)數(shù)據(jù)進(jìn)行檢查,如果發(fā)現(xiàn)錯(cuò)誤,將拒絕或回滾變動(dòng)的數(shù)據(jù)。(2)INSTEAD OF 觸發(fā)器:將在數(shù)據(jù)變動(dòng)以前被激發(fā)。并取代變動(dòng)數(shù)據(jù)(INSERT、UPDATE和DELETE操作)的操作,轉(zhuǎn)而去執(zhí)行觸發(fā)器定義的操作。4、分別使用兩種方法創(chuàng)建一個(gè)DELETE類型的觸發(fā)器。A、使用企業(yè)管理器創(chuàng)建觸發(fā)器,舉例:選擇Sales數(shù)據(jù)庫(kù)的Goods表,在下面的步驟中將在Goods表創(chuàng)建觸發(fā)器。B、使用Transact-SQL語(yǔ)言創(chuàng)建觸發(fā)器舉例:創(chuàng)建一個(gè)簡(jiǎn)單的觸發(fā)器,當(dāng)有人試圖更新Sales數(shù)據(jù)庫(kù)的商品信息時(shí),利用觸發(fā)器產(chǎn)生提示信息。-創(chuàng)建觸發(fā)器USE SalesGOCREATE
31、 TRIGGER tri_UpdateGoodsON GoodsFOR UPDATEAS RAISERROR('更新表數(shù)據(jù)',16,10)-測(cè)試觸發(fā)器UPDATE GoodsSET 數(shù)量=8where 商品編號(hào)=5結(jié)果如下:服務(wù)器: 消息 50000,級(jí)別 16,狀態(tài) 10,過程 tri_UpdateGoods,行 5更新表數(shù)據(jù)5、修改及刪除觸發(fā)器注意:重命名觸發(fā)器 EXEC sp_rename '原觸發(fā)器名', '新觸發(fā)器名'6、小結(jié)及思考:A、存儲(chǔ)過程及觸發(fā)器有什么不同?B、觸發(fā)器及約束的區(qū)別是什么?C、觸發(fā)器有幾種類型,如何創(chuàng)建?D、什么是
32、嵌套觸發(fā)器、遞歸觸發(fā)器 ?第10章 用戶自定義函數(shù)及事務(wù)一、教學(xué)目標(biāo):1、了解函數(shù)的概念。2、掌握創(chuàng)建用戶自定義函數(shù)的方法。3、了解函數(shù)的執(zhí)行、修改及刪除的方法。4、理解事務(wù)處理及鎖的概念。二、教學(xué)重點(diǎn)和難點(diǎn):教學(xué)重點(diǎn):創(chuàng)建用戶自定義函數(shù)的方法;教學(xué)難點(diǎn):理解事務(wù)處理及鎖的理解。三、教學(xué)方法及手段:使用多媒體投影室,注重實(shí)例,采用互動(dòng)式教學(xué)方式。四、教學(xué)課時(shí):3課時(shí)五、教學(xué)基本內(nèi)容: 1、復(fù)習(xí)觸發(fā)器。(5分鐘)2、函數(shù)的概念,用戶自定義函數(shù)簡(jiǎn)介3、創(chuàng)建用戶自定義函數(shù)有兩種方法:一種是使用企業(yè)管理器,另一種是使用查詢分析器。4、事務(wù)簡(jiǎn)介事務(wù)是一個(gè)邏輯工作單元,其中包括了一系列的操作,這些操作要么
33、全部執(zhí)行,要么都不執(zhí)行。典型的事務(wù)實(shí)例是兩個(gè)銀行之間的轉(zhuǎn)賬,賬號(hào)A轉(zhuǎn)出1000元至賬號(hào)B,這筆轉(zhuǎn)賬業(yè)務(wù)可分解為:(1) 賬號(hào)A減去1000元;(2) 賬號(hào)B增加1000元。當(dāng)然,要求這兩項(xiàng)操作要么同時(shí)成功(轉(zhuǎn)賬成功),要么同時(shí)失敗(轉(zhuǎn)賬失敗)。只有其中一項(xiàng)操作成功則是不可接受的事情。如果確實(shí)發(fā)生了只有其中一項(xiàng)操作成功的話,那么應(yīng)該撤消所做的操作(回滾事務(wù)),就好象什么操作都沒有發(fā)生一樣。事務(wù)具有4個(gè)屬性:原子性、一致性、隔離性、持久性。簡(jiǎn)稱為ACID屬性。5、鎖的概念鎖作為一種安全機(jī)制,用于控制多個(gè)用戶的并發(fā)操作,防止用戶讀取正在由其他用戶更改的數(shù)據(jù)或者多個(gè)用戶同時(shí)修改同一數(shù)據(jù),確保事務(wù)的完整性和數(shù)據(jù)庫(kù)的一致性。6、死鎖及其排除7、小結(jié)8、作業(yè)課本156頁(yè)本章習(xí)題第11章 SQL Server 管理一、教學(xué)目標(biāo):1、了解兩種驗(yàn)證模式,掌握添加兩種登錄帳戶的方法。2、了解權(quán)限管理、服務(wù)器角色和數(shù)據(jù)庫(kù)角色、。3、掌握數(shù)據(jù)導(dǎo)入、導(dǎo)出的方法。4、掌握數(shù)據(jù)庫(kù)備份和恢復(fù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物探課程設(shè)計(jì)報(bào)告總結(jié)
- 礦井通風(fēng)課程設(shè)計(jì)心得
- 綜合通信系統(tǒng)課程設(shè)計(jì)
- 電工電子課程設(shè)計(jì)概述
- 英文秋天主題課程設(shè)計(jì)
- 研學(xué)谷物分揀課程設(shè)計(jì)
- 線上公交類培訓(xùn)課程設(shè)計(jì)
- 按鍵電燈課程設(shè)計(jì)
- 職業(yè)素養(yǎng)課程設(shè)計(jì)總結(jié)
- 自然教育課程設(shè)計(jì)冬天
- 植保無人機(jī)安全飛行
- 科學(xué)計(jì)算語(yǔ)言Julia及MWORKS實(shí)踐 課件 3-MWORKS簡(jiǎn)介
- 2024年10月自考04532財(cái)務(wù)會(huì)計(jì)專題試題及答案含解析
- 醫(yī)療糾紛事件匯報(bào)
- 2024年村干部個(gè)人工作總結(jié)例文(3篇)
- 2024年中國(guó)電信運(yùn)營(yíng)商服務(wù)合同
- 2025屆山東省即墨一中物理高三第一學(xué)期期末綜合測(cè)試試題含解析
- 健身房的考勤管理制度
- 無人機(jī)使用安全協(xié)議書范文范本
- 中國(guó)汽車行業(yè)分析與展望:適者生存-2024-10-市場(chǎng)解讀
- 做賬實(shí)操-期貨公司的賬務(wù)處理示例
評(píng)論
0/150
提交評(píng)論