第一篇:SQL Server數(shù)據(jù)庫系統(tǒng)知識要求
試卷題型
一.名詞解釋(每題2分,共10分)
數(shù)據(jù)管理、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、模式(概念模式、邏輯模式)、外模式(用戶模式)、內(nèi)模式(物理模式、存儲模式)、數(shù)據(jù)獨立性、物理數(shù)據(jù)獨立性、邏輯數(shù)據(jù)獨立性、主數(shù)據(jù)文件、日志文件、視圖、索引、簇索引、存儲過程、觸發(fā)器、游標、內(nèi)連接、左(外)聯(lián)接、主鍵約束、唯一約束、檢查約束、默認約束、事物、數(shù)據(jù)依賴、第1范式、第2范式、第3范式
二.填空題(每空1分,共20分)
三.是非題(每題1分,共10分)
四.單項選擇(每題2分,共20分)
五.按要求寫出相應(yīng)的SQL語句(每題3分,共24分)
設(shè)有如下關(guān)系表:
student(sid char(4),sname char(10),ssex char(2),sage int)
course(cid char(4),cname char(10),credit char(6))
grade(sid char(4),cid char(4),score int)
注:sid為學(xué)號,sname為姓名,ssex為性別,sage年齡
cid為課程號,cname為課程名稱,credit為學(xué)分
score為成績
寫出實現(xiàn)下列功能的SQL 語句。
(1)創(chuàng)建一個新的表totalgrade,具有數(shù)據(jù)列:學(xué)號,姓名,總成績Create table totalgrade(學(xué)號 char(4),姓名 char(8),總成績 int)
(2)在student中插入一條記錄(’0119’,’王鴻路’,19);
Insert into student(sid,sname,sage)
values(‘0119’,’王鴻路’,19)
(3)通過student表,更新totalgrade表的學(xué)號、姓名列數(shù)據(jù);
Insert into totalgrade
Select 學(xué)號,姓名,總成績=0 from student
(4)將grade表中學(xué)號為“0003”的學(xué)生,課程號為“0102”的分數(shù)改為94; Update grade set 分數(shù)=‘94’
Where sid=‘0003’ and cid=‘1020’
(5)通過grade表更新totalgrade表的總成績
Update totalgrade set 總成績=
(select sum(score)from grade where totalgrade.sid=grade.sid)From grade
(6)刪除totalgrade表中沒有總成績的學(xué)生記錄
Delete totalgrade where 總成績=0
(7)在student表中查詢學(xué)號為0002的同學(xué)的姓名和年齡
Select sname, sage from student where sid=?0002?
(8)在student表中查詢與“劉偉平”年齡相同的所有學(xué)生的學(xué)號、姓名 Select sid,sname from student where sage=
(select sage from student where sname=” 劉偉平”)
(9)列出學(xué)號為0001的學(xué)生的分數(shù)比學(xué)號為0002的學(xué)生的最低分數(shù)高的課程編號和分數(shù)
Select cid,score from grade where sid=”0001” and score>any
(select score from grade where sid=”0002”)
(10)查詢分數(shù)在80—90之間的學(xué)生的學(xué)號、姓名、分數(shù)
Select student.sid , student.sname,grade.score
From student,grade
Where student.sid=grade.sid and score between 80 and 90
六、程序填空(每空2分,共16分)
1.利用T-SQL語言修改student 的表,為“學(xué)號”列定義主鍵。
table student(Constraint pk_s “學(xué)號 ”)
2.以下程序用游標gd_cur查尋并顯示studentsdb數(shù)據(jù)庫的grade表的每條記錄,且判斷出每條記錄的分數(shù)等級是優(yōu)秀、良好、及格還是不及格,將等級顯示在每條記錄的末尾。
Declare @sid char(8),@cid varchar(10), @scr numeric(5,2)
Declare gd_cur cursor
For select 學(xué)號,課程號,分數(shù) form grade
Open Fetch from gd_cur into @sid ,@cid , @scr
While @@fetch_status=0
Begin
Print @sid+replicate(??,3)
+@cid+str(@scr)+ replicate(??,3)
+(When @scr>=90 then ?優(yōu)秀?
When @scr>=70 then ?良好?
When @scr>=60 then ?及格?
Else?不及格?
End)
grd_cur into @sid ,@cid , @scr
End
Close gd_cur
Deallocate gd_cur
3.創(chuàng)建和執(zhí)行帶輸入和輸出參數(shù)的存儲過程proc_avg,查詢studentsdb數(shù)據(jù)庫的grade表中輸入課程編號和最高分、最低分和平均分。
Createprocedureproc_avg
@cid char(4)
@max_scr real ,@min_scr real output,@avg_scr numeric(5,2)output
as
select @max_scr = max(分數(shù)),@min_scr=min(分數(shù)),from grade
where 課程編號 = @cid
group by 課程編號
第二篇:SqlServer教學(xué)大綱
《SQL Server2005案例教程》教學(xué)大綱
一、教學(xué)目的:
1.通過本門課程的學(xué)習(xí),使學(xué)員掌握數(shù)據(jù)庫的概念,安裝以及數(shù)據(jù)庫在程序設(shè)計中的重要地位和作用 2.理解關(guān)系型數(shù)據(jù)庫和表,約束,索引的創(chuàng)建
3.了解SQL語言基礎(chǔ)與使用SQL語言實現(xiàn)數(shù)據(jù)的查詢與更新 4.熟悉sqlserver的應(yīng)用環(huán)境及掌握常用的管理方法 5.掌握視圖,存儲過程,觸發(fā)器等數(shù)據(jù)庫對象的創(chuàng)建與使用 6.掌握數(shù)據(jù)庫的安全管理 7.掌握數(shù)據(jù)的備份與恢復(fù) 8.掌握數(shù)據(jù)的導(dǎo)入導(dǎo)出步驟
9.理解SqlServer下事務(wù)的概念,并能在實際應(yīng)用中合理的使用事務(wù)控制命令
二、教學(xué)重點:
1.數(shù)據(jù)庫基本概念
2.數(shù)據(jù)庫表,約束,索引的創(chuàng)建 3.使用SQL語言實現(xiàn)數(shù)據(jù)的查詢與更新 4.Select,update,delete,insert 5.index 6.constraint 7.view視圖
三、教學(xué)難點:
1.SqlServer體系結(jié)構(gòu)
2.SqlServer下事務(wù)的概念,并能在實際應(yīng)用中合理的使用事務(wù)控制 3.存儲過程 4.觸發(fā)器
四、教學(xué)內(nèi)容及學(xué)時分配
第1章、數(shù)據(jù)庫概述 6課時
第2章、SQL Server安裝及管理 4課時 第3章、數(shù)據(jù)庫及表的設(shè)計 4課時 第4章、T-ransact SQL語言基礎(chǔ) 6課時 第5章、T-ransact SQL數(shù)據(jù)查詢與更新 14課時 第6章、視圖 6課時 第7章、存儲過程 復(fù)習(xí)
5課時
4課時
第8章、觸發(fā)器
6課時 第9章、SQL安全 3第10章、數(shù)據(jù)備份與恢復(fù) 第11章、數(shù)據(jù)轉(zhuǎn)換
復(fù)習(xí)4
課時 4課時 2課時
課時 68課時
第三篇:SqlServer教學(xué)大綱
《數(shù)據(jù)庫與SQL Server》課程教學(xué)大綱
總學(xué)時:48 學(xué)分:2.5 適用對象:軟件工程專業(yè)和信息工程與信息管理專業(yè)。先修課程:程序設(shè)計導(dǎo)論等。
考核要求:本課程采用期末考核與平時成績相結(jié)合的方式對學(xué)生學(xué)習(xí)情況予以評定,平時成績占40%,期末考核成績占60%。平時成績包括作業(yè)、實驗報告與考勤,期末考核方式為課程設(shè)計。
一、課程的性質(zhì)與任務(wù)
數(shù)據(jù)庫技術(shù)是各種信息系統(tǒng)、管理系統(tǒng)的基礎(chǔ)。Microsoft SQL Server 2000是一種使用比較廣泛、功能強大、可靠性較高的數(shù)據(jù)庫管理系統(tǒng),為用戶提供了完整的數(shù)據(jù)庫解決方案。開設(shè)本課程可以令學(xué)生掌握數(shù)據(jù)庫的有關(guān)概念,熟悉一種大型數(shù)據(jù)庫管理系統(tǒng)的使用。
本課程是一門理論和應(yīng)用相結(jié)合的課程,要求學(xué)生在完成本課程的學(xué)習(xí)后,能在SQL SERVER 2000數(shù)據(jù)庫管理系統(tǒng)中利用所學(xué)習(xí)的數(shù)據(jù)庫知識對數(shù)據(jù)庫進行設(shè)計、操作。
二、教學(xué)目的與基本要求
熟練掌握:關(guān)系數(shù)據(jù)庫中的概念,數(shù)據(jù)庫設(shè)計,數(shù)據(jù)庫的結(jié)構(gòu)與特點,數(shù)據(jù)庫系統(tǒng)的組成及各部分的功能,熟練使用結(jié)構(gòu)化查詢語言(SQL)。數(shù)據(jù)庫管理,各種數(shù)據(jù)庫對象管理,索引技術(shù),數(shù)據(jù)操縱技術(shù)。
掌握:系統(tǒng)的安裝,服務(wù)器的配置技術(shù),安全性技術(shù),數(shù)據(jù)復(fù)制技術(shù),數(shù)據(jù)的互操作技術(shù),數(shù)據(jù)完整性控制,Transact-SQL語言。
了解:關(guān)系、關(guān)系模型、鍵碼、視圖、存儲過程、觸發(fā)器等概念,SQL Server的并發(fā)性。
理論教學(xué)部分
理論課學(xué)時:42 使用教材及主要參考書:
教材:李春葆,《數(shù)據(jù)庫原理與應(yīng)用——基于SQL Server 2000》,清華大學(xué)出版社。主要參考書:Microsoft SQL SERVER 2000聯(lián)機文檔。
一、學(xué)時分配
章節(jié) 1 2 3 4 5 6 7 課程內(nèi)容 數(shù)據(jù)庫系統(tǒng)概述 數(shù)據(jù)模型 關(guān)系數(shù)據(jù)庫
關(guān)系數(shù)據(jù)庫規(guī)范化理論 數(shù)據(jù)庫設(shè)計
SQL Server 2000系統(tǒng)概述 創(chuàng)建和使用數(shù)據(jù)庫
學(xué)時 1 2 2 4 4 2 3 8 9 10 11 12 13 14 15 16 17 18 創(chuàng)建和使用表 Transact-SQL SQL高級應(yīng)用 索引 視圖
數(shù)據(jù)庫完整性 存儲過程 觸發(fā)器
SQL Server的安全管理 數(shù)據(jù)備份與還原 數(shù)據(jù)轉(zhuǎn)換 4 2 1.5 1.5 3 3 3 1 1 1
二、教學(xué)中應(yīng)注意的問題
利用多媒體輔助授課,注意培養(yǎng)學(xué)生設(shè)計、管理、使用數(shù)據(jù)庫的能力。
三、教學(xué)內(nèi)容
第一章 數(shù)據(jù)庫系統(tǒng)概述
基本內(nèi)容:
信息、數(shù)據(jù)和數(shù)據(jù)處理,數(shù)據(jù)管理技術(shù)的發(fā)展,數(shù)據(jù)庫系統(tǒng)的組成與結(jié)構(gòu),數(shù)據(jù)庫管理系統(tǒng)。
教學(xué)基本要求:
熟練掌握:信息與數(shù)據(jù),數(shù)據(jù)處理,數(shù)據(jù)庫系統(tǒng)的組成,數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu),DBMS的主要功能,DBMS的組成。教學(xué)重點難點:
數(shù)據(jù)處理,數(shù)據(jù)庫系統(tǒng)的組成,數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu),DBMS的主要功能,DBMS的組成。
第二章 數(shù)據(jù)模型
基本內(nèi)容:
數(shù)據(jù)模型,概念模型,數(shù)據(jù)庫類型。教學(xué)基本要求:
熟練掌握:數(shù)據(jù)的描述,實體間的聯(lián)系方式,實體聯(lián)系表示法(E-R方法),關(guān)系模型。教學(xué)重點難點:
關(guān)系模型。
第三章 關(guān)系數(shù)據(jù)庫
基本內(nèi)容:
關(guān)系模型的基本概念,關(guān)系的數(shù)學(xué)定義,關(guān)系代數(shù)。教學(xué)基本要求:
熟練掌握:關(guān)系模型的基本概念,關(guān)系的數(shù)學(xué)定義,關(guān)系代數(shù)。教學(xué)重點難點:
關(guān)系模型的基本概念,關(guān)系的數(shù)學(xué)定義,關(guān)系代數(shù)。
第四章 關(guān)系數(shù)據(jù)庫規(guī)范化理論
基本內(nèi)容:
函數(shù)依賴,范式和規(guī)范化,關(guān)系模式的分解。教學(xué)基本要求:
熟練掌握:函數(shù)依賴與屬性關(guān)系,Armstrong公理,范式的判定條件與規(guī)范化,無損分解的定義和性質(zhì),無損分解的測試方法,保持函數(shù)依賴的分解。教學(xué)重點難點:
范式的判定條件與規(guī)范化,無損分解的定義和性質(zhì),無損分解的測試方法,保持函數(shù)依賴的分解。
第五章 數(shù)據(jù)庫設(shè)計
基本內(nèi)容:
數(shù)據(jù)庫設(shè)計概述,需求分析,概念結(jié)構(gòu)設(shè)計,邏輯結(jié)構(gòu)設(shè)計,物理結(jié)構(gòu)設(shè)計,數(shù)據(jù)庫的實施和維護。教學(xué)基本要求:
熟練掌握:需求分析,概念結(jié)構(gòu)設(shè)計,邏輯結(jié)構(gòu)設(shè)計,物理結(jié)構(gòu)設(shè)計。教學(xué)重點難點:
局部應(yīng)用E-R模型設(shè)計,總體概念E-R模型設(shè)計。
第六章 SQL Server 2000系統(tǒng)概述
1. 基本內(nèi)容:
SQL Server 2000系統(tǒng)簡介,系統(tǒng)需求,SQL Server 2000的安裝,客戶/服務(wù)器體系結(jié)構(gòu),SQL Server服務(wù)器的管理,SQL Server 2000的主要組件。2. 教學(xué)基本要求:
熟練掌握:系統(tǒng)需求,SQL Server 2000的安裝,客戶/服務(wù)器體系結(jié)構(gòu),SQL Server 2000的主要組件。3. 教學(xué)重點難點:
系統(tǒng)需求,SQL Server 2000的安裝,客戶/服務(wù)器體系結(jié)構(gòu),SQL Server 2000的主要組件。
第七章 創(chuàng)建和使用數(shù)據(jù)庫
1. 基本內(nèi)容:
查看數(shù)據(jù)庫,SQL Server數(shù)據(jù)庫和文件,創(chuàng)建數(shù)據(jù)庫,數(shù)據(jù)庫更名,刪除數(shù)據(jù)庫。2. 教學(xué)基本要求:
熟練掌握:查看數(shù)據(jù)庫,SQL Server數(shù)據(jù)庫和文件,創(chuàng)建數(shù)據(jù)庫,數(shù)據(jù)庫更名,刪除數(shù)據(jù)庫。
3. 教學(xué)重點難點:
查看數(shù)據(jù)庫,SQL Server數(shù)據(jù)庫和文件,創(chuàng)建數(shù)據(jù)庫,數(shù)據(jù)庫更名,刪除數(shù)據(jù)庫。
第八章 創(chuàng)建和使用表
1. 基本內(nèi)容:
建立表,修改表的結(jié)構(gòu),建立表間的關(guān)聯(lián),刪除表,記錄的新增和修改。2. 教學(xué)基本要求:
熟練掌握:建立表,修改表的結(jié)構(gòu),建立表間的關(guān)聯(lián),刪除表,記錄的新增和修改。3. 教學(xué)重點難點:
建立表,修改表的結(jié)構(gòu),建立表間的關(guān)聯(lián),記錄的新增和修改。
第九章 Transact-SQL 1. 基本內(nèi)容:
SQL語言,Transact-SQL基礎(chǔ),Transact-SQL程序設(shè)計基礎(chǔ)。2. 教學(xué)基本要求:
熟練掌握:數(shù)據(jù)庫的操作語句,表的操作語句,數(shù)據(jù)查詢,標識符,數(shù)據(jù)類型,運算符,變量,批處理,注釋,控制流語句,函數(shù)。3. 教學(xué)重點難點:
數(shù)據(jù)庫的操作語句,表的操作語句,數(shù)據(jù)查詢,標識符,數(shù)據(jù)類型,運算符,變量,批處理,注釋,控制流語句,函數(shù)。
第十章 SQL高級應(yīng)用
1. 基本內(nèi)容:
SELECT高級查詢,管理ntext、text和image數(shù)據(jù),事務(wù)處理,數(shù)據(jù)的鎖定,使用游標。2. 教學(xué)基本要求:
熟練掌握:SELECT高級查詢,管理ntext、text和image數(shù)據(jù),事務(wù)處理,數(shù)據(jù)的鎖定,使用游標。3. 教學(xué)重點難點:
SELECT高級查詢,使用游標。
第十一章 索引
1. 基本內(nèi)容:
索引簡介,索引類型,創(chuàng)建索引,查看和刪除索引。2. 教學(xué)基本要求:
掌握:索引類型。
熟練掌握:創(chuàng)建索引,查看和刪除索引。3. 教學(xué)重點難點:
創(chuàng)建索引,查看和刪除索引。
第十二章 視圖
1. 基本內(nèi)容:
視圖概述,創(chuàng)建視圖,使用視圖,視圖的修改,視圖信息的查詢,視圖的刪除。2. 教學(xué)基本要求:
熟練掌握:創(chuàng)建視圖,視圖的修改,視圖的刪除。3. 教學(xué)重點難點:
創(chuàng)建視圖,視圖的修改,視圖的刪除。
第十三章 數(shù)據(jù)庫完整性
1. 基本內(nèi)容:
約束,默認值,規(guī)則。2. 教學(xué)基本要求:
熟練掌握:約束,默認值,規(guī)則。3. 教學(xué)重點難點:
約束,默認值,規(guī)則。
第十四章 存儲過程
1. 基本內(nèi)容:
概述,創(chuàng)建存儲過程,執(zhí)行存儲過程,存儲過程的參數(shù),存儲過程的查看、修改和刪除。2. 教學(xué)基本要求:
熟練掌握:創(chuàng)建存儲過程,執(zhí)行存儲過程,存儲過程的參數(shù),存儲過程的查看、修改和刪除。
3. 教學(xué)重點難點:
創(chuàng)建存儲過程,執(zhí)行存儲過程,存儲過程的參數(shù)。
第十五章 觸發(fā)器
1. 基本內(nèi)容:
概述,創(chuàng)建觸發(fā)器,inserted表和deleted表,使用觸發(fā)器,修改觸發(fā)器,刪除觸發(fā)器,嵌套觸發(fā)器。2. 教學(xué)基本要求:
熟練掌握:創(chuàng)建觸發(fā)器,inserted表和deleted表,使用觸發(fā)器,修改觸發(fā)器,刪除觸發(fā)器,嵌套觸發(fā)器。3. 教學(xué)重點難點:
創(chuàng)建觸發(fā)器,inserted表和deleted表,嵌套觸發(fā)器。
第十六章 SQL Server的安全管理
1. 基本內(nèi)容:
SQL Server安全體系結(jié)構(gòu),SQL Server的驗證模式,賬號和角色。2. 教學(xué)基本要求:
熟練掌握:SQL Server安全體系結(jié)構(gòu),SQL Server的驗證模式,賬號和角色。3. 教學(xué)重點難點:
服務(wù)器的登錄賬號,數(shù)據(jù)庫的用戶,數(shù)據(jù)庫角色,用戶和角色的權(quán)限問題。
第十七章 數(shù)據(jù)備份與還原
1. 基本內(nèi)容:
備份和還原構(gòu)架,備份數(shù)據(jù)庫,數(shù)據(jù)庫還原。2. 教學(xué)基本要求: 熟練掌握:備份數(shù)據(jù)庫,數(shù)據(jù)庫還原。3. 教學(xué)重點難點:
備份數(shù)據(jù)庫,數(shù)據(jù)庫還原。
第十八章 數(shù)據(jù)轉(zhuǎn)換
1. 基本內(nèi)容:
DTS的基本概念,數(shù)據(jù)的導(dǎo)入,數(shù)據(jù)的導(dǎo)出。2. 教學(xué)基本要求:
熟練掌握:DTS的基本概念,數(shù)據(jù)的導(dǎo)入,數(shù)據(jù)的導(dǎo)出。3. 教學(xué)重點難點:
數(shù)據(jù)的導(dǎo)入,數(shù)據(jù)的導(dǎo)出
實驗教學(xué)部分
實驗學(xué)時:6 實驗指導(dǎo)書:李春葆,《數(shù)據(jù)庫原理與應(yīng)用——基于SQL Server 2000》,清華大學(xué)出版社。
一、課程的性質(zhì)與任務(wù)
數(shù)據(jù)庫技術(shù)是各種信息系統(tǒng)、管理系統(tǒng)的基礎(chǔ)。Microsoft SQL Server 2000是一種使用比較廣泛、功能強大、可靠性較高的數(shù)據(jù)庫管理系統(tǒng),為用戶提供了完整的數(shù)據(jù)庫解決方案。開設(shè)本課程可以令學(xué)生掌握數(shù)據(jù)庫的有關(guān)概念,熟悉一種大型數(shù)據(jù)庫管理系統(tǒng)的使用。
本課程是一門理論和應(yīng)用相結(jié)合的課程,要求學(xué)生在完成本課程的學(xué)習(xí)后,能在SQL SERVER 2000數(shù)據(jù)庫管理系統(tǒng)中利用所學(xué)習(xí)的數(shù)據(jù)庫知識對數(shù)據(jù)庫進行設(shè)計、操作。
二、實驗?zāi)康呐c基本要求
本實驗課程配合理論教學(xué),通過實驗從實踐中進一步學(xué)習(xí),掌握和運用學(xué)過的數(shù)據(jù)庫的基本理論;熟練使用Transact-SQL語言處理各類典型數(shù)據(jù)庫應(yīng)用問題,解決實驗過程中的出現(xiàn)的錯誤和問題,培養(yǎng)、訓(xùn)練學(xué)生的分析和解決問題的能力。
學(xué)生必須完成的基本要求:準備實驗,擬定實驗方案;組織實驗;寫出需求分析報告,畫出流程圖;調(diào)試程序;寫出實驗報告。
三、實驗考核方式及辦法
考核方式:考查;
實驗成績評分辦法:程序調(diào)試占40%,預(yù)習(xí)報告占10%,實驗報告占30%,平時成績占20%。
四、實驗項目一覽表
SQL Server 程序設(shè)計實驗項目一覽表
序號 1 實驗項目名稱
實驗類型
實驗要求 必做
適用專業(yè) 信息
學(xué)時 3 注冊、配置服務(wù)器、管理數(shù)據(jù)庫、管理表 設(shè)計 2 Transact-SQL 設(shè)計 必做 信息 3
五、實驗項目的具體內(nèi)容
實驗一 注冊、配置服務(wù)器、管理數(shù)據(jù)庫、管理表
1、本次實驗的目的和要求
熟練使用企業(yè)管理器、查詢分析器與MS SQL SERVER 2000實例連接,進行服務(wù)器的注冊和配置。創(chuàng)建、修改、查看、刪除數(shù)據(jù)庫。創(chuàng)建、修改、刪除數(shù)據(jù)表。熟練使用索引、視圖對數(shù)據(jù)進行管理和查看。掌握SQL SERVER中有關(guān)數(shù)據(jù)庫安全的操作。掌握SQL SERVER中如何進行數(shù)據(jù)互操作、數(shù)據(jù)復(fù)制等操作。
2、實驗內(nèi)容或原理
使用企業(yè)管理器進行MS SQL SERVER 2000服務(wù)器的注冊,并在企業(yè)管理器中對已注冊的SQL SERVER實例進行配置。
使用查詢分析器與指定MS SQL SERVER 2000服務(wù)器連接,并通過查詢窗口使用SQL語句查看、修改服務(wù)器的配置。
分別使用查詢分析器和企業(yè)管理器實現(xiàn)創(chuàng)建、修改、查看、刪除數(shù)據(jù)庫。在用戶數(shù)據(jù)庫中創(chuàng)建、修改、刪除數(shù)據(jù)表。注意表中約束條件的使用。根據(jù)要求進行索引、視圖的定義、使用、查看、修改、刪除等操作。
分別通過企業(yè)管理器和查詢分析器在SQL SERVER實例中對登錄賬號、數(shù)據(jù)庫安全賬號、角色進行創(chuàng)創(chuàng)建、修改、刪除和權(quán)限的管理。
通過SQL SERVER的數(shù)據(jù)轉(zhuǎn)換服務(wù)在SQL SERVER和其它格式數(shù)據(jù)文件之間進行數(shù)據(jù)的轉(zhuǎn)換和復(fù)制。
實驗二 Transact-SQL
1、本次實驗的目的和要求
通過查詢分析器在實驗二中創(chuàng)建的用戶數(shù)據(jù)表中使用數(shù)據(jù)操縱語言進行基本數(shù)據(jù)操作,并使用Transact-SQL進行簡單SQL程序設(shè)計。掌握數(shù)據(jù)的高級查詢技巧,學(xué)習(xí)如何處理大數(shù)據(jù),練習(xí)游標的使用。掌握SQL SERVER中控制完整性的方法,學(xué)習(xí)存儲過程的使用。
2、實驗內(nèi)容或原理
在數(shù)據(jù)表中添加記錄、更新記錄、刪除記錄,按照要求進行數(shù)據(jù)的簡單查詢,并使用Transact-SQL進行簡單SQL程序設(shè)計。通過查詢分析器對數(shù)據(jù)進行高級查詢,處理大數(shù)據(jù),練習(xí)游標的使用。
通過查詢分析器練習(xí)通過約束、默認值、規(guī)則等手段進行數(shù)據(jù)的完整性控制,練習(xí)存儲過程的使用,利用存儲過程實現(xiàn)復(fù)雜操作。
通過查詢分析器進行觸發(fā)器的創(chuàng)建、使用、修改、刪除等操作,并利用觸發(fā)器實現(xiàn)復(fù)雜的完整性控制。
編寫人:趙光煜
編寫(修訂)日期:2007.7
第四篇:SQLserver教學(xué)
1.Sql2000 安裝和卸載要解決掛起的問題 2.TL_SQL帶有條件、循環(huán)的語言 3.數(shù)據(jù)庫是如何存儲數(shù)據(jù)的
字段 記錄 表 約束(主鍵 外鍵 唯一鍵 非空 check default)4.數(shù)據(jù)庫是如何操作數(shù)據(jù)
Insert update delete T-SQL 存儲過程 函數(shù) 觸發(fā)器 5.數(shù)據(jù)庫是如何顯示數(shù)據(jù)的
6.主鍵:唯一標識事物;外鍵:來連接另外相關(guān)聯(lián)的表(來自);對多一(外鍵存放“多”表)其值不能隨便設(shè)置;一條記錄—元組,列叫字段,屬性; 外鍵表(外鍵存在的表),主鍵表(被視為是主鍵的表)建立外鍵dept_id int constraint fk_dept_id_hehe foreign key references
dept(dept_id)id int constraint pk_emp_lion primary key,主鍵
7.主鍵約束:不允許重復(fù)元素,避免了數(shù)據(jù)的冗余 外鍵約束:通過外鍵約束從語法上本事物關(guān)聯(lián)的其他事物一定是存在的(事物與事物之間的關(guān)系)
Check約束:sex char(2)check(sex in('男','女'))保證事物在某個取值范圍內(nèi) Default約束:設(shè)定為默認的值
Unique約束:不能插入重復(fù)的值,能為空,主鍵不能為空;unique和not null 可以組合使用;不允許多列為空;orcal中運行多列為空
8.主鍵的選擇:最好用沒有業(yè)務(wù)邏輯的唯一的主鍵,方便檢索; 9.關(guān)系:
一對一的關(guān)系:可以把表A的主鍵充當表B的外鍵,也可反之; 一對多的關(guān)系:表A
(一)的主鍵成為表B(多)的外鍵;
多對多的關(guān)系:班級——老師——學(xué)生,單獨一張表去實現(xiàn)關(guān)系,第三張表的主鍵設(shè)置 外鍵與外鍵的組合;外鍵來自兩張表的主鍵;
10.查詢(最重要、難度最大)distinct 會過濾掉重復(fù)的deptno的值;distinct 兩個屬性列可以對他們組成的組合進行過濾;先取表—在過濾條件; Null 不參與邏輯運算,is null,null不能有值的進行運算;
解決辦法:sal*12+isnull(comm,0):如果其值為空,返回‘0’,不為空 返回本值 11.Order by(以某個字段排序):不是組合排序,先按照第一個屬性排序,相同的再按第二個屬性排序;
12.聚合函數(shù) count(deptno)統(tǒng)計返回的不為空的記錄
Count(distinct 字段)返回字段不重復(fù)的記錄數(shù)
13.Group by之后select 中只能出現(xiàn)分組后的整體信息,不能顯示單獨的信息;
先按A分組,如果A相同,在按B分組,如果B分組相同,再按C分組,最總統(tǒng)計的是最小分組的信息;
14.Having 對分組之后的信息進行過濾;
select deptno,avg(sal)from emp group by deptno having avg(sal)>=2000 where對原始的記錄進行過濾,group by 是對分組之后的記錄過濾; 同:都是對數(shù)據(jù)進行過濾,保留有效數(shù)據(jù)
15.連接查詢:將兩個表或者兩個以上的表以一定的連接條件連接起來,從中檢索出滿足條件的數(shù)據(jù); 內(nèi)連接:select ….from a join b on 條件;select * from a,b對表A、表B 進行笛卡爾積 用where 會對a表進行過濾; On后面為連接條件;jion為連接;
select * from emp,dept where emp.deptno=dept.deptno與內(nèi)鏈接結(jié)果相同 推薦使用jion on 對連接結(jié)果再進行where過濾 3張表進行連接:
select a.ename,a.deptno,b.dname,c.grade from emp a join dept b on a.deptno = b.deptno join salgrade c on a.sal between losal and hisal 外連接:不但返回滿足條件的所有幾率,而且會返回部分不滿足的條件的記錄; 完全連接:兩個表中匹配的所有行的記錄,左邊匹配右邊,右邊匹配左邊; 交叉連接:產(chǎn)生一個笛卡爾積 等價于select * from emp,dept 自連接:一張表和自己連接起來查詢數(shù)據(jù)。例子:不準用聚合函數(shù),求薪水最高的員工的信息;
聯(lián)合的用法:表和表之間的數(shù)據(jù)以縱向的方式連接在一起; 必須滿足兩個條件:這select子句必須滿足列的屬性相同;
注意:我們之前講的所有的連接是以橫向的連接方式去連接在一起的;
16.Identity 主鍵自動增長,自動增長后刪除,不會自動過濾刪除過的記錄;主鍵不會自動增長;主鍵是否連續(xù)增長不是十分重要;可以為identity主鍵賦值;
17.學(xué)習(xí)的步驟:為什么需要A,什么是A,怎么使用A,使用A時的注意問題,A的應(yīng)用領(lǐng)域,A的優(yōu)缺點; 18.視圖
1.為什么需要視圖;2.什么是視圖;3.視圖的格式;4.視圖的優(yōu)點、缺點;5.注意的問題;
1).簡化查詢:避免了代碼的冗余,大量重復(fù)的SQL語句;從代碼上看是一個select語句 從邏輯上看是一個虛擬表看待 視圖的格式:
2).Create view 視圖的名字
3).用視圖去查詢數(shù)據(jù);4).增加了數(shù)據(jù)庫的維護的成本; As Select 語句
不用添加begin 和end 創(chuàng)建視圖的select 語句必須為所有的計算列(非原始的)指定別名;不建議對基表進行操作; 19.事務(wù):保證避免數(shù)據(jù)處于以后總不合理的中間狀態(tài)
要么成功,要么失敗;
事務(wù)也是通過鎖來解決很多問題的;線程同步就是通過鎖來解決的;
第五篇:sqlserver講稿
各位同行:
大家好!
非常榮幸和大家一起交流學(xué)習(xí)SQLSERVER的知識,說實話,對本內(nèi)容我已經(jīng)放下很多年了,而且跟我們中的許多專業(yè)人士相比,我所掌握的知識是非常淺薄的,同時也由于時間關(guān)系,雖然我已經(jīng)竭盡全力,但是很多地方我只能點到為止,希望能對大家的學(xué)習(xí)起到一個簡單的引導(dǎo)和動員作用。
在開始學(xué)習(xí)內(nèi)容之前,我想講兩個問題,第一個為什么要學(xué)習(xí)數(shù)據(jù)庫?兩個理由,1、作為信息技術(shù)教師,我們必須具備比較全面的知識,數(shù)據(jù)庫應(yīng)該是信息技術(shù)教師的一個專業(yè)基礎(chǔ),目前高中信息技術(shù)選修教材就有一本數(shù)據(jù)庫技術(shù)應(yīng)用;
2、數(shù)據(jù)庫技術(shù)在我們?nèi)粘9ぷ魃钪薪?jīng)常需要應(yīng)用到,例如網(wǎng)站的編輯制作、平時給學(xué)校安裝的一些應(yīng)用軟件都經(jīng)常要用到數(shù)據(jù)庫。而且我一直有一個想法,我們象山有那么多的信息技術(shù)教師,而且人才輩出,為什么不組織起來,成立一個大的公司,因為我們的人才除了教育之外,還可以承擔(dān)社會上的網(wǎng)站制作、軟件開發(fā)、廣告制作,影視動畫設(shè)計等工作,網(wǎng)站制作、軟件開發(fā)肯定經(jīng)常要和數(shù)據(jù)庫打交道,所以適當?shù)膶W(xué)習(xí)一些數(shù)據(jù)庫的知識對我們的工作,對我們專業(yè)知識,對我們的發(fā)展都是有好處的。第二個問題,如何學(xué)習(xí)?多實踐。計算機知識并不是靠教的,而是靠自己在實踐中去學(xué)習(xí)的。KESION 今天我們的學(xué)習(xí)內(nèi)容我分為四個部分,1、是SQLSERVER的簡介和安裝
2、運用企業(yè)管理器來建立和操作SQLSERVER數(shù)據(jù)庫,3、SQL語言來操作數(shù)據(jù)庫
4、實踐練習(xí)。我的講授實踐大約是2個半小時,實踐練習(xí)45分鐘左右。
第一部分:SQLSERVER的簡介和安裝(30分鐘)
1、SQL簡介: 結(jié)構(gòu)化查詢語言,是指用來對存放在計算機中的數(shù)據(jù)庫進行組織、管理和檢索的語言,這個概念模型是70年代IBM公司提出來的,當時他的英文全稱是Structured Qurey Language,1986年美國標準協(xié)會公布的SQL86標準用standard query language來取代了這個英文名稱,但是其核心沒有發(fā)生改變。
SQL語言是數(shù)據(jù)庫發(fā)展和應(yīng)用中一個非常有用的工具,不僅SQLSERVER數(shù)據(jù)庫支持SQL語言,ACCESSMY-SQL等都支持SQL語言,是目前應(yīng)用最廣泛的關(guān)系數(shù)據(jù)庫查詢語言,不僅SQL數(shù)據(jù)庫中可以用到它,基本上所有的關(guān)系型數(shù)據(jù)庫都可以用到。而且它有一個好處是SQL語言不僅僅在數(shù)據(jù)庫中可以直接應(yīng)用,而且還可以嵌入到其它的開發(fā)語言中,例如網(wǎng)頁代碼中、各種編程語言中,利用編程語言來操作數(shù)據(jù)庫。
而且它的語言簡單,易學(xué)易用。功能包括四個方面,定義、查詢、操縱和控制數(shù)據(jù)庫。整個語言中,只有9個核心動詞,這9個核心動詞分布在SQL語言的四個部分中
(1)數(shù)據(jù)定義語言(DDL,Data Define Language),這部分語言是用來定義、撤銷、修改數(shù)據(jù)對象的,例如修改數(shù)據(jù)庫或者數(shù)據(jù)表。它有3個單詞:create drop alter Create 創(chuàng)建表、創(chuàng)建索引、創(chuàng)建觸發(fā)器 Drop 丟棄表 Alter 修改
(2)數(shù)據(jù)庫查詢語言
select
(3)數(shù)據(jù)庫操縱語言
insert update delete
(4)數(shù)據(jù)庫控制語言 grant revoke 例如對用戶進行授權(quán),控制讀寫權(quán)限。
2、SQLserver簡介
Sqlserver 是微軟公司開發(fā)和推廣的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它最初是有微軟、SYBASE和ASTON三個公司共同開發(fā)的,后來后2家公司退出了開發(fā)團隊,微軟 憑借強大的財力和實力,不斷地退出新的版本,我們今天學(xué)習(xí)的是2000版,其實2000版后面還有2005,2008,2010三個版本,由于系統(tǒng)限制,同時2000占據(jù)應(yīng)用市場的最大份額。
特點:(1)、支持C/S體系結(jié)構(gòu),計算機最早是單機系統(tǒng),后來出現(xiàn)多用戶系統(tǒng)。例如銀行用的UNIX系統(tǒng),一臺服務(wù)器支持多個終端。客戶機可以訪問服務(wù)器的資源,利用一臺電腦建立SQLSERVER數(shù)據(jù)庫服務(wù)器,將SQLserver安裝到這臺電腦上,其它電腦可以登錄到這臺電腦共享數(shù)據(jù)資源。SQLserver是一個單進程,多線程的服務(wù)。也就是說,服務(wù)器上始終有一個進程在待命,同時可以相應(yīng)對個終端的請求。它最多可以同時支持32767個連接。
(2)、圖形化工作界面,使系統(tǒng)管理和數(shù)據(jù)管理更加直觀、簡單,容易學(xué)習(xí),容易控制。(3)、有豐富的變成接口工具,為用戶今次那個程序設(shè)計提供了豐富的選擇余地,例如可以使用ODBC數(shù)據(jù)源連接,也可以使用網(wǎng)絡(luò)連接。
(4)與windowsNT以上版本完全集成,很好地與微軟的操作系統(tǒng)產(chǎn)品集成,集成管理登陸的安全性。
(5)具有很好的伸縮性,從win95到win7多種平臺,多種處理器使用。
(6)對WEB技術(shù)的支持,使用戶很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到WEB上。
(7)提供數(shù)據(jù)倉庫功能,而這個功能除了SQLSEVER外只有一些比較昂貴的數(shù)據(jù)庫管理系統(tǒng)中才有,例如ORACLE.性能
Sqlserver數(shù)據(jù)庫管理系統(tǒng)中可以同時建立32767個數(shù)據(jù)庫,每個庫中可以建立20億個表,每個表可以支持1024個字段(列),可以同時支持32767個用戶連接,鎖定打開對象20億個,可以同時打開32767個數(shù)據(jù)庫。
數(shù)據(jù)庫的安裝,安裝之前我們要考慮軟硬件條件是否滿足,關(guān)閉影響SQLSERVER數(shù)據(jù)庫安裝的一些程序,而且必須以管理員的身份登錄到安裝計算機。同時要考慮適合自己需要的版本。
版本:
Sqlserver2000的版本有四種,我們可以根據(jù)實際應(yīng)用需要選擇自己的版本 企業(yè)版大中型產(chǎn)品的數(shù)據(jù)庫服務(wù)器,一般作為數(shù)據(jù)庫服務(wù)器使用,一百個以上的應(yīng)用客戶端同時使用。
標準版支持工作組,用于小型的工作做或部門,不支持關(guān)系數(shù)據(jù)庫的引擎功能。個人版用于移動用戶,經(jīng)常在網(wǎng)絡(luò)上斷開,除了事務(wù)處理復(fù)制功能外支持標準版的所有功能。
開發(fā)版只授權(quán)開發(fā)和測試使用,而不是一個產(chǎn)品的服務(wù)器,提供豐富調(diào)試工具。安裝示范
實例是SQL2000中引入的一個新概念,多實例就是在同一臺電腦上安裝多個SqlServer服務(wù)器,實例不僅可以在同一電腦上運行多個SqlServer服務(wù)器,而且可以可以安裝不同版本的SqlServer數(shù)據(jù)庫在同一電腦上,而且他們互干擾。
默認實例就是以計算機在網(wǎng)絡(luò)上的名字命名的實例,在一臺計算機上只允許有一個默認實例存在。
命名實例就是運用計算機在網(wǎng)絡(luò)上的名字加上數(shù)據(jù)庫標志名字來命名的實例,形式是計算機名實例名,客戶機可以根據(jù)實際需要連接到同一臺計算機上不同的實例。
任務(wù)一:在自己的電腦上安裝SQLSERVER2000個人版。第二部分:運用企業(yè)管理器來創(chuàng)建和操作數(shù)據(jù)庫
系統(tǒng)數(shù)據(jù)庫:
Master:最重要,是追蹤其它所有數(shù)據(jù)庫和存儲信息的關(guān)鍵庫,控制著用戶數(shù)據(jù)庫和存儲信息的關(guān)鍵庫。
Model:模板數(shù)據(jù)庫,當創(chuàng)建新的數(shù)據(jù)庫的時候,新數(shù)據(jù)庫的第一部分就是通過復(fù)制model數(shù)據(jù)庫中的內(nèi)容創(chuàng)建的,它由7個表組成,因此model數(shù)據(jù)庫不能刪除
Msdb:代理數(shù)據(jù)庫為其警報,任務(wù)調(diào)度和記錄提供存儲空間。SqlServer在MSDB數(shù)據(jù)庫中自動維護完整的聯(lián)機備份和恢復(fù)歷史記錄。
Tempdb:臨時數(shù)據(jù)庫,為臨時表、臨時存儲過程及操作過程提供存儲空間,默認大小為8MB,根據(jù)實際情況會自動增長空大小。
Pubs數(shù)據(jù)庫和Northwind數(shù)據(jù)庫非系統(tǒng)數(shù)據(jù)庫,而是兩個范例數(shù)據(jù)庫,是學(xué)習(xí)SQLSERVER的工具。
Pubs是書籍出版公司的數(shù)據(jù)庫,Northwind數(shù)據(jù)庫是一個商品銷售數(shù)據(jù)庫。
第三分:運用查詢分析器創(chuàng)建和操作數(shù)據(jù)庫
第四部分:上機實驗