第一篇:SQL數(shù)據(jù)庫上機(jī)練習(xí)3
SQL數(shù)據(jù)庫上機(jī)練習(xí)3
在C:盤根目錄下用自己的名字加“_DB”建立一個(gè)文件夾。(例:“王平_DB”)
一.(6分)在SQL Server Management Studio中建立滿足如下要求的數(shù)據(jù)庫:
1. 數(shù)據(jù)庫名字為:TGDB;
2. 此數(shù)據(jù)庫包含的一個(gè)主數(shù)據(jù)文件和一個(gè)輔助數(shù)據(jù)文件。主數(shù)據(jù)文件的邏輯文件名為:TG_data1,物理文件名為TG_data1.mdf,存放在新建文件夾下,初始大小為4MB,自動(dòng)增長,每次增加20%,最多增加到8MB。輔助數(shù)據(jù)文件的邏輯文件名為:TG_data2,物理文件名為TG_data2.ndf,同主數(shù)據(jù)文件存放在相同的位置,初始大小為2MB,不自動(dòng)增長。
3. 日志文件包含一個(gè),其邏輯文件名為:TG_log,物理文件名為TG_log.ldf,同主數(shù)據(jù)文件存放在相同的位置,初始大小為3MB,增長方式為自動(dòng)增長,每次增加1MB,文件增長不受限制。二.(10分)為描述作者向期刊的投稿情況,建立了三張表:作者表、期刊表和投稿表。期刊表用于描述期刊的基本信息,作者表用于描述作者的基本信息,投稿表用于描述作者向期刊的投稿情況。在查詢分析器中寫出創(chuàng)建這三張表的語句,并將語句以文件形式保存下來,文件名為“考生名.sql”,存放在新建的文件夾下。可以將后續(xù)所有的SQL語句均保存在此文件中,在文件中注明題號,不用抄題)。
注:括號中為表名和列名的拼音表示,建表時(shí)用拼音表示表名和列名,不區(qū)分大小寫。三張表的結(jié)構(gòu)如下: 1.作者表(ZZB)
作者號(zzh)普通字符編碼定長字符型,長度為4,主碼;
作者名(zzm)統(tǒng)一字符編碼可變長字符型,最多5個(gè)漢字,取值不重復(fù)。
2.期刊表(QKB)
期刊號(qkh)
普通字符編碼定長字符型,長度為4,主碼;
期刊名(qkm)
普通字符編碼可變長字符型,最大長度為20,非空;
類別(lb)
普通字符編碼定長字符型,長度為2,取值為“是”或“否”
(說明:“是”表示此期刊為核心期刊,“否”表示此期刊為非核心期刊)。
版面費(fèi)(bmf)
整型。
3.投稿表(TGB)
作者號(zzh)
普通字符編碼定長字符型,長度為4,非空; 期刊號(qkh)
普通字符編碼定長字符型,長度為4,非空; 投稿日期(tgrq)
小日期時(shí)間型,非空,默認(rèn)值為系統(tǒng)當(dāng)前時(shí)間; 文章名稱(wzmc)普通字符編碼定長字符型,長度為50;
審稿結(jié)果(sgjg)
統(tǒng)一字符編碼定長字符型,長度為3,取值范圍為{通過,未通過},默認(rèn)值為“未通過”。
其中,主碼為(作者號,期刊號,投稿日期),“作者號”為引用作者表的“作者號”的外碼; “期刊號”為引用期刊表的“期刊號”的外碼。
三.(6分)運(yùn)行C:exam.exe程序解壓縮數(shù)據(jù)文件(可解壓到任何地方),解壓縮的密碼為“dbok”。利用SQL Server的導(dǎo)入導(dǎo)出向?qū)В瑢ⅰ捌诳?txt”文件中的數(shù)據(jù)導(dǎo)入到“期刊表”中,將解壓后的 “作者與投稿表.xls”文件中的數(shù)據(jù)分別導(dǎo)入到 “作者表”和“投稿表”中。四.(6分)在SQL Server Management Studio中創(chuàng)建“SQL Server身份驗(yàn)證”模式的登錄帳號:TG_User,其中賬戶密碼為空,默認(rèn)數(shù)據(jù)庫為Master。并完成如下操作: 1.讓TG_User成為TGDB數(shù)據(jù)庫的合法用戶。
2.在TGDB數(shù)據(jù)庫中建用戶自定義角色:MyRole,讓TG_User成為MyRole角色中的成員。3.用較好的方法授予MyRole在TGDB數(shù)據(jù)庫中具有所有用戶表的查詢權(quán)。
五.(4分)在SQL Server Management Studio中按要求完成下列操作:
1.創(chuàng)建一個(gè)永久備份設(shè)備,備份設(shè)備的名字為“TG_BK”,存放在新建文件夾下,物理文件名為“TG_BK.bak”。
2.用“TG_BK”備份設(shè)備對“TGDB”進(jìn)行一次完全備份。六.(28分)利用第二題的三張表,在查詢分析器中寫出實(shí)現(xiàn)如下要求的SQL語句,注明題號。并將這些語句與第二題所寫的語句保存在一起。(注:要求下述語句均使用一條SQL語句完成)1.查詢2006年以后(包括2006年)的投稿情況,列出作者名、期刊名、文章名稱和投稿日期。2.查詢姓哪個(gè)姓的作者最多,列出這個(gè)姓氏和姓這個(gè)姓氏的作者人數(shù),包含并列的情況。3.查詢作者“楊伍華”沒有投過稿的核心期刊的名稱。
4.查詢“楊伍華”投過稿的期刊的投稿情況,顯示期刊號,審稿通過總次數(shù),版面費(fèi)總金額(說明:只有審稿結(jié)果為“通過”時(shí),作者才需向期刊繳納相應(yīng)版面費(fèi)),要求只列出投稿次數(shù)超過5次(不包括5次)且版面費(fèi)總金額大于7000的情況。
5.查詢?nèi)w作者(包括還沒有投過稿的作者)的人均投稿次數(shù),列出總投稿次數(shù)、總?cè)藬?shù)和人均投稿次數(shù)。要求平均投稿次數(shù)保存到小數(shù)點(diǎn)后2位。
6.向投稿表中插入一條記錄,作者號為“zz01”,期刊號為“qk02”,文章名稱為“地鐵限界系統(tǒng)的研究”,投稿日期和審稿結(jié)果為默認(rèn)值。7.刪除投稿表中2000年以前(包括2000年),期刊名為“哲學(xué)研究”中審稿未通過的的投稿記錄。七.(10)統(tǒng)計(jì)每位作者的投稿情況,列出作者名,投稿通過率(保留到小數(shù)點(diǎn)后2位),評價(jià)。其中,當(dāng)投稿通過率高于0.7,評價(jià)為“高”;當(dāng)投稿通過率在0.4到0.7之間,評價(jià)為“中”;當(dāng)投稿通過率低于0.4,評價(jià)為“低”。(可分步驟實(shí)現(xiàn))八.(10)用游標(biāo)實(shí)現(xiàn)按如下報(bào)表形式顯示結(jié)果的SQL語句。該報(bào)表首先輸出期刊名稱(只包括有投稿記錄的期刊),然后顯示此期刊的詳細(xì)投稿情況,包括是否為核心期刊、作者名、投稿日期、審稿結(jié)果和文章名稱。(說明:“是否為核心期刊”一項(xiàng)填寫要求:如果是核心就寫“是”,否則就寫“否”。注意:報(bào)表的顯示格式。)提示:有關(guān)游標(biāo)的語句格式如下:
? 聲明游標(biāo):declare 游標(biāo)名 cursor for select 語句 ? 打開游標(biāo):open 游標(biāo)名 ? 關(guān)閉游標(biāo):close游標(biāo)名
? 提取數(shù)據(jù):fetch next from 游標(biāo)名 into?? ? 釋放游標(biāo):deallocate 游標(biāo)名 ? 全局變量:@@fetch_status 報(bào)表形式大致如下:(下表只列出了部分?jǐn)?shù)據(jù))
期刊名稱:計(jì)算機(jī)應(yīng)用研究
是否為核心期刊
作者姓名
投稿日期
審稿結(jié)果
文章名稱
是
陳毅華
2007年6 月3 日
通過
信息安全的第二道防線——入侵檢測系統(tǒng)
是
楊曉光
2008年6 月9 日
通過
一種基于移動(dòng)agent技術(shù)的分布式數(shù)據(jù)檢索系統(tǒng)的實(shí)現(xiàn)
是
楊伍華
2007年8 月29日
通過
無線傳感器網(wǎng)絡(luò)的研究
是
楊伍華
2008年2 月1 日
通過
基于Web的考試系統(tǒng)新方案
是
陳曉立
2006年3 月9 日
通過
基于J2EE的分布式事務(wù)研究
是
田令洋
2006年1 月26日
通過
個(gè)性化協(xié)同學(xué)習(xí)環(huán)境本體的研究
期刊名稱:交通與計(jì)算機(jī)
是否為核心期刊
作者姓名
投稿日期
審稿結(jié)果
文章名稱
是
田令洋
2007年4 月8 日
未通過
CORBA和Java的結(jié)合使用
是
田令洋
2008年1 月3 日
未通過
高速公路通信系統(tǒng)的整合利用初探
??
是
楊曉光
2006年3 月1 日
未通過
基于VC與Ansys的參數(shù)化有限元分析
第二篇:Access上機(jī)練習(xí)2(SQL上機(jī)練習(xí)1)
實(shí)驗(yàn)項(xiàng)目名稱:SQL簡單查詢 所屬課程名稱:數(shù)據(jù)庫原理與應(yīng)用 實(shí)驗(yàn)類型:操作型
實(shí)驗(yàn)要求:使用SQL視圖完成SQL簡單查詢 實(shí)驗(yàn)?zāi)康模?/p>
1.熟悉SQL語言的數(shù)據(jù)查詢功能; 2.熟悉Access中SQL視圖的使用;
3.通過SQL語言的數(shù)據(jù)查詢語句SELECT熟悉Access中表達(dá)式的構(gòu)成與使用。*4.熟悉簡單的多表查詢。實(shí)驗(yàn)方案設(shè)計(jì):
1.使用“教學(xué)管理.mdb”中的表,練習(xí)教材例【6-1】~【6-13】內(nèi)容,熟悉Access中SQL視圖的使用與SQL簡單查詢的實(shí)現(xiàn)。2.利用“教學(xué)管理.mdb”,獨(dú)立完成布置的SQL查詢要求。
練習(xí):
1.顯示“課程信息表”表中所有字段和記錄。2.顯示所有教師的姓名、性別,所屬院系和職稱情況。3.顯示每位教師的工齡。
4.查詢來校10年以上(含10年)的黨員教師信息。5.查詢所有財(cái)政學(xué)院和經(jīng)濟(jì)學(xué)院的教師信息。6.查詢40歲以上(不含40歲)的非黨員教師信息。7.查詢姓名中含有“海”字的教師信息。8.顯示全部學(xué)生的班級。
9.查詢成績在60分(含60分)到90分(含90分)之間的學(xué)生的學(xué)號。*10.顯示有不及格成績的學(xué)生名單。
*11.顯示每位教師的公積金繳存情況,顯示屬性包括教師編號、姓名、公積金。*12.顯示所有女黨員的工齡和薪級工資。
*13.顯示財(cái)政學(xué)院每位教師的姓名和他們的實(shí)發(fā)工資額。(提示:實(shí)發(fā)工資=崗位工資+薪級工資+崗位津貼-公積金)
14.自己設(shè)計(jì)一個(gè)查詢,并用SQL命令實(shí)現(xiàn)(要求:對設(shè)計(jì)要有合理的解釋,且最好有新意)。
第三篇:sql上機(jī)實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)一(2.20)
實(shí)驗(yàn)內(nèi)容:熟悉sql server 2005
實(shí)驗(yàn)?zāi)康模赫莆誷ql服務(wù)器的啟動(dòng)和停止方法、熟悉management studio 的操作界面和新建查詢。
重點(diǎn):使用數(shù)據(jù)庫引擎啟動(dòng)數(shù)據(jù)庫服務(wù)器、停止數(shù)據(jù)庫服務(wù);服務(wù)器的認(rèn)識以及如何啟動(dòng)查詢分析器
難點(diǎn):無
實(shí)驗(yàn)操作:
1.使用數(shù)據(jù)庫引擎啟動(dòng)數(shù)據(jù)庫服務(wù)器:
開始->程序->microsoft sql server 2005->
sql server management studio->數(shù)據(jù)庫引擎->服務(wù)器名稱(選擇)->連接。
2.分別打開數(shù)據(jù)庫,安全性和管理文件夾查看文件內(nèi)容。
3.點(diǎn)擊新建查詢建立一個(gè)查詢窗口。
4.打開model數(shù)據(jù)庫,查看其中的文件。
實(shí)驗(yàn)二(2.27)
實(shí)驗(yàn)內(nèi)容:使用manegement studio和查詢分析器創(chuàng)建數(shù)據(jù)表
實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建數(shù)據(jù)表的方法
重點(diǎn):學(xué)會(huì)使用查詢分析器創(chuàng)建數(shù)據(jù)表
難點(diǎn):字段數(shù)據(jù)類型的選擇以及數(shù)據(jù)長度的定義
實(shí)驗(yàn)操作:
在basetest數(shù)據(jù)庫中創(chuàng)建學(xué)生表,學(xué)生(sno,sname,ssex,sage,sdept)。其中sno,sname,ssex,sdept字
段數(shù)據(jù)類型設(shè)為char,長度為10;sage字段數(shù)據(jù)類型設(shè)為int!create table 學(xué)生
實(shí)驗(yàn)三(3.5)
實(shí)驗(yàn)內(nèi)容:添加表的約束
實(shí)驗(yàn)?zāi)康模赫莆帐褂胊lter table 語句修改表的時(shí)候添加表的約束
重點(diǎn):為表添加主鍵外鍵約束
難點(diǎn):為列設(shè)置列級完整性約束;使用sql語句為表設(shè)置外鍵。
實(shí)驗(yàn)操作:
1:為學(xué)生表添加主鍵約束pk約束,設(shè)置sno為主鍵
alter table 學(xué)生
add constraint pk約束
primary key(sno)
實(shí)驗(yàn)四(3.12)
查詢
(一)實(shí)驗(yàn)?zāi)康模赫莆誗elect語句的使用方法
實(shí)驗(yàn)重點(diǎn):Select語句的語法結(jié)構(gòu)
實(shí)驗(yàn)難點(diǎn):連接查詢
實(shí)驗(yàn)步驟:1.練習(xí)查找指定列的查詢
2.練習(xí)查找經(jīng)過計(jì)算的列
3.練習(xí)為查找字段設(shè)置字段別名
4.Where子句的使用
5.多表連接查詢
實(shí)驗(yàn)五(3.19)
查詢
(二)實(shí)驗(yàn)?zāi)康模赫莆誗QL語句的使用方法
實(shí)驗(yàn)重點(diǎn):統(tǒng)計(jì)查詢和嵌套查詢和聯(lián)合查詢
實(shí)驗(yàn)難點(diǎn):子查詢的方法
實(shí)驗(yàn)步驟:1.1.Compute與Compute By的區(qū)別
2.子查詢 In與Exsits的區(qū)別
3.比較運(yùn)算的子查詢
4.聯(lián)合查詢
5.OrderBy子句的使用
6.統(tǒng)計(jì)函數(shù)的使用
7.Group By 與Having的使用
實(shí)驗(yàn)六(3.36)
查詢
(三)實(shí)驗(yàn)?zāi)康模赫莆誗QL語句的使用方法
實(shí)驗(yàn)重點(diǎn):簡單查詢和統(tǒng)計(jì)查詢和嵌套查詢
實(shí)驗(yàn)難點(diǎn):嵌套查詢的方法
實(shí)驗(yàn)步驟:1.在student表中查詢CS系學(xué)生信息,并產(chǎn)生一個(gè)總?cè)藬?shù)行
2.查詢學(xué)生信息,統(tǒng)計(jì)總?cè)藬?shù)并對每個(gè)系產(chǎn)生一個(gè)學(xué)生總?cè)藬?shù)行
3.按系分組,并在每組下顯示本系中年齡最大學(xué)生年齡
4.按系和性別分組并統(tǒng)計(jì)最大年齡和最小年齡
實(shí)驗(yàn)七(4.2)
實(shí)驗(yàn)內(nèi)容:創(chuàng)建索引
實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建索引的方法
重點(diǎn):掌握索引的基本功能
難點(diǎn):使用sql語句創(chuàng)建索引
實(shí)驗(yàn)操作:
1:使用manegement studio 創(chuàng)建索引
2:創(chuàng)建一表myfriend,所包含的屬性列為(名字char(10),性別(10),地址(100)),并在該表上基于名字創(chuàng)建一個(gè)唯一聚集索引wj索引,索引的填充為100。
實(shí)驗(yàn)八(4.9)
實(shí)驗(yàn)內(nèi)容:創(chuàng)建視圖
實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建視圖的方法
重點(diǎn):掌握視圖的基本功能
難點(diǎn):使用sql語句創(chuàng)建視圖
1、在basetest數(shù)據(jù)庫中創(chuàng)建一個(gè)MA系的學(xué)生信息視圖
2、創(chuàng)建IS系女生選課信息,指定字段中文名
3、使用WITH CHECK OPTION子句創(chuàng)建男生信息視圖
4、在CS系學(xué)生信息視圖中查詢女生的信息
5、修改cs系學(xué)生05008的年齡為21歲
實(shí)驗(yàn)九(4.16)
實(shí)驗(yàn)內(nèi)容:流程控制語句與用戶自定義函數(shù)的使用
實(shí)驗(yàn)?zāi)康模赫莆樟鞒炭刂普Z句與用戶自定義函數(shù)的使用
重點(diǎn):掌握自定義函數(shù)的創(chuàng)建
難點(diǎn):表值用戶自定義函數(shù)的創(chuàng)建
實(shí)驗(yàn)操作:
1:計(jì)算1+2+3+...+100的和
2:計(jì)算n!(n=10)
3: 查詢是否有選修成績高于90分的學(xué)生,有則輸出該生信息,沒有就輸出“不存在選修成績高于90分的學(xué)生。”
實(shí)驗(yàn)十(4.23)
實(shí)驗(yàn)內(nèi)容:存儲(chǔ)過程、事務(wù)及游標(biāo)
實(shí)驗(yàn)?zāi)康模赫莆沾鎯?chǔ)過程、事務(wù)及游標(biāo)的使用
重點(diǎn):掌握存儲(chǔ)過程的創(chuàng)建、事務(wù)創(chuàng)建及游標(biāo)的使用方法
難點(diǎn):帶參數(shù)的存儲(chǔ)過程的創(chuàng)建、游標(biāo)的使用
實(shí)驗(yàn)操作:
1:創(chuàng)建存儲(chǔ)過程ppa,能根據(jù)給定的‘系別’返回該系對應(yīng)的學(xué)生的sno,sname,ssex 2:創(chuàng)建存儲(chǔ)過程ppb,能根據(jù)給定的‘系別’統(tǒng)計(jì)該系的人數(shù),并將人數(shù)輸出顯示!
第四篇:SQL數(shù)據(jù)庫心得
黃淮學(xué)院 2015---2016學(xué)年第 一 學(xué)期 《C#數(shù)據(jù)庫應(yīng)用程序開發(fā)技術(shù)與案例教程》課程
題目:
學(xué)習(xí)報(bào)告
院
系:數(shù)學(xué)科學(xué)系 專
業(yè):數(shù)學(xué)與應(yīng)用數(shù)學(xué) 年
級:1301B 姓
名:曹占營 學(xué)
號:1331110101 任課教師:楊鋒英
2015年 12 月 30日
C#數(shù)據(jù)庫學(xué)習(xí)報(bào)告
在日常生活中,我們和朋友、親戚聯(lián)系,會(huì)廣泛用到通訊錄,因此這門課程以通訊錄開發(fā)為案例,教我們學(xué)習(xí)軟件開發(fā)。
軟件開發(fā)是一項(xiàng)非常注重實(shí)踐工作,不可能只憑看書、看視頻就學(xué)會(huì)軟件開發(fā),必須扎扎實(shí)實(shí)、一行一行的編寫代碼,不斷積累項(xiàng)目經(jīng)驗(yàn),才能真正掌握編程技術(shù),所以我們要親自上級編寫程序,才能真正掌握軟件開發(fā)技術(shù)。
本書分為基礎(chǔ)篇、進(jìn)階篇、高級篇,由淺入深地介紹了基于C#的數(shù)據(jù)庫編程技術(shù),所用的開發(fā)工具為Visual Studio 2008、SQL Server 2005以及Access 2007。
學(xué)習(xí)數(shù)據(jù)庫的內(nèi)容是從數(shù)據(jù)庫、數(shù)據(jù)表的創(chuàng)建和修改開始的,表是建立關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數(shù)據(jù)、刪除表中的數(shù)據(jù)及修改表和刪除表的操作。從課程中讓我更明白一些知識,查詢可以通過SQL語言進(jìn)行完成,這樣加深了查詢語句的基本結(jié)構(gòu),讓我們能更好的掌握其中語句,方便于我們后面的學(xué)習(xí)和應(yīng)用。表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫的成敗,表的內(nèi)容是越具體越好,但是也不能太繁瑣,以后在實(shí)際應(yīng)用中多使用表,對表的規(guī)劃和理解就會(huì)越深刻。在編程方面是需要我們對于編程有邏輯思維能力及一定的編程技巧。在數(shù)據(jù)庫中插入表、表中的信息等都需要注意,不然很容易出錯(cuò)。
在基礎(chǔ)篇中,詳細(xì)講解了通訊錄系統(tǒng)的設(shè)計(jì)、開發(fā)和安裝部署這樣一個(gè)完整過程,對各個(gè)任務(wù)進(jìn)行詳細(xì)講解。基礎(chǔ)篇學(xué)習(xí)分為9個(gè)任務(wù),分別為系統(tǒng)分析與設(shè)計(jì)、用戶登錄、主窗體設(shè)計(jì)、聯(lián)系人分組管理、聯(lián)系人管理、用戶密碼修改、數(shù)據(jù)庫備份與恢復(fù)、設(shè)計(jì)“關(guān)于”窗體、系統(tǒng)安裝與部署。學(xué)完基礎(chǔ)篇,即可開發(fā)出一個(gè)功能較為完備的通訊錄系統(tǒng)。在聯(lián)系人管理任務(wù)學(xué)習(xí)中,由于在Contact表中保存的是分組編號,而窗體上要顯示的是分組名稱,所以在查詢語句中需要級聯(lián)查詢,即SQL語句為”select Contact.Id, Name, Phone, Email, QQ, GroupName from Contact, ContactGroup where Contact.GroupId = ContactGroup.Id”。為了實(shí)現(xiàn)代碼復(fù)用,可以提供查詢功能,根據(jù)用戶選擇的擦尋天劍,拼接產(chǎn)生SQL語句。同時(shí)為了支持模糊查詢,還在SQL語句中用了like語句。通過SqlDataAdapter的Fill方法填充數(shù)據(jù)集,獲取數(shù)據(jù)。數(shù)據(jù)集中有了數(shù)據(jù)以后,我們只需設(shè)置DataGridView控件的DataSource屬性,就可以顯示數(shù)據(jù)了。
在進(jìn)階篇中,介紹了企業(yè)項(xiàng)目開發(fā)中廣發(fā)用到的參數(shù)化SQL語句、存儲(chǔ)過程使用及定義數(shù)據(jù)庫操作類,分為3個(gè)任務(wù)學(xué)習(xí),分別為使用參數(shù)化SQL語句、使用存儲(chǔ)過程、使用自定義數(shù)據(jù)庫操作類,進(jìn)一步提高我們的數(shù)據(jù)庫編程能力。在使用存儲(chǔ)過程任務(wù)學(xué)習(xí)中,了解到存儲(chǔ)過程是在大型數(shù)據(jù)庫系統(tǒng)中,一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中,用戶通過指定存儲(chǔ)過程的名字并給出參數(shù)(如果該存儲(chǔ)過程帶有參數(shù))來執(zhí)行它。在性能方面,存儲(chǔ)過程有如下的優(yōu)點(diǎn)。(1)與編譯,存儲(chǔ)過程預(yù)先編譯好放在數(shù)據(jù)庫內(nèi),減少編譯語句所花的時(shí)間。(2)緩存,編譯好的存儲(chǔ)過程會(huì)進(jìn)入緩存,所以對于經(jīng)常執(zhí)行的存儲(chǔ)過程,除了第一次執(zhí)行外,其他次執(zhí)行的書都會(huì)有明顯提高。(3)減少網(wǎng)絡(luò)傳輸,特別對于處理一些數(shù)據(jù)的存儲(chǔ)過程,不必像直接用SQL語句實(shí)現(xiàn)那樣多次傳送數(shù)據(jù)到客戶端。通過前面的學(xué)習(xí),細(xì)細(xì)體會(huì)對數(shù)據(jù)庫的操作,可以發(fā)現(xiàn),這么多操作其實(shí)可以分為4種。(1)對數(shù)據(jù)庫進(jìn)行非連接式查詢操作,返回多條記錄。這種操作可以通過SqlDataAdapter對象的Fill方法來完成,即把查詢得到的結(jié)果填充到DataTable(或DataSet)對象中。(2)對數(shù)據(jù)庫進(jìn)行連接式查詢操作,返回多條查詢記錄。這種操作可以通過SqlCommand對象的ExecuteReader方法來完成,返回SqlDataReader對象。(3)從數(shù)據(jù)庫中檢索單值。這種操作可以通過SqlCommand對象的ExecuteNonQuery方法來完成。ExecuteScalar方法返回的是Object類型,需要根據(jù)實(shí)際情況進(jìn)行類型轉(zhuǎn)換。(4)對數(shù)據(jù)庫執(zhí)行增、刪、改操作。這種操作可以通過SqlCommand對象的ExecuteNonQuery方法來完成,返回增、刪、改操作后數(shù)據(jù)庫中受影響的行數(shù)。
在高級篇中,分為4個(gè)任務(wù)學(xué)習(xí),分別為開發(fā)基于三層構(gòu)架的通訊錄程序、開發(fā)基于Access的通訊錄程序、實(shí)現(xiàn)基于抽象工廠模式的三層架構(gòu)、使用MD5加密用戶密碼。首先詳細(xì)講解了基于三層構(gòu)架的通訊錄程序開發(fā)過程以及如何開發(fā)一個(gè)基于Access的通訊錄系統(tǒng)。最后,介紹了如何采用MD5加密技術(shù)對用戶密碼加密。MD5加密技術(shù)也是實(shí)際項(xiàng)目開發(fā)中廣泛用到的,通過MD5加密用戶密碼,可以提高程序的安全性。“三層架構(gòu)”一詞中的“三層”是指:“表示層”、“業(yè)務(wù)邏輯層”、“數(shù)據(jù)訪問層”。表示層:位于最外層,離用戶最近。用于顯示和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作界面。表示層的常見形式為WinFrom和WebForm。業(yè)務(wù)邏輯層:負(fù)責(zé)處理用戶輸入的信息,或者是將這些信息發(fā)送給數(shù)據(jù)訪問層進(jìn)行保存,或者是調(diào)用數(shù)據(jù)訪問層中的函數(shù)再次讀出這些數(shù)據(jù)。業(yè)務(wù)邏輯層也可以包括一些對“商業(yè)邏輯”描述代碼在里面。數(shù)據(jù)訪問層:僅實(shí)現(xiàn)對數(shù)據(jù)的保存和讀取操作。可以訪問數(shù)據(jù)庫系統(tǒng)、二進(jìn)制文件、文本文檔或是XML文檔。
在這一學(xué)期有限的幾次實(shí)驗(yàn)課后,我雖然沒有學(xué)會(huì)很多,但也學(xué)會(huì)了一些簡單的操作,我學(xué)會(huì)了一些簡單的數(shù)據(jù)運(yùn)算,會(huì)建立一些簡單的表。有時(shí)候在做實(shí)驗(yàn)時(shí),對于實(shí)驗(yàn)中的一些東西我不怎么了解,但我還會(huì)去做,因?yàn)槲蚁胫挥卸嗑毩?xí)才能熟練,也才能理解掌握知識。我不知道這一門課對其他同學(xué)來說怎么樣,但對我來說卻有些難,但我會(huì)努力。因?yàn)槲艺J(rèn)為它對我以后考計(jì)算機(jī)二級有很大的幫助。
很快這一學(xué)期馬上就要結(jié)束了,數(shù)據(jù)庫這一門課也很快就要結(jié)束了,但這一學(xué)期的學(xué)習(xí)讓我知道了很多,也告訴了我在以后的人生中如何去做事,如何去做人。尤其是老師的耐心,老師的敬業(yè)精神感動(dòng)了我,再做任何事時(shí)都應(yīng)該認(rèn)真負(fù)責(zé),任何一個(gè)人都應(yīng)該被尊重。
第五篇:數(shù)據(jù)庫上機(jī)心得體會(huì)
數(shù)據(jù)庫上機(jī)心得體會(huì)
數(shù)據(jù)庫的課程結(jié)束了,通過對數(shù)據(jù)庫的學(xué)習(xí)也初步掌握其各方面的知識,數(shù)據(jù)庫的功能是強(qiáng)大的,面對目前的信息化社會(huì),在整理、查詢、分析數(shù)據(jù)方面是一款強(qiáng)有力的工具。
學(xué)習(xí)的目的在于將知識能合理順利的運(yùn)用,將書本知識化為自己所用,是一個(gè)不知到知道,了解完善應(yīng)用的過程,尤其是計(jì)算機(jī)方面的課程更是如此,必要的上機(jī)練習(xí)是必不可少的。之前的計(jì)算機(jī)語言、匯編語言等,都是在上機(jī)練習(xí)中得到順利掌握。面對這學(xué)期的數(shù)據(jù)庫也是如此的過程,在開始對理論知識的學(xué)習(xí),然后進(jìn)行上機(jī)練習(xí),目的在于讓我們更好的掌握其知識,熟悉數(shù)據(jù)庫編程語言等。
當(dāng)然上機(jī)可也不是輕松是課程,在課前還是應(yīng)該做些相應(yīng)的準(zhǔn)備。首先在理論知識的學(xué)習(xí)中必須先打好基礎(chǔ),經(jīng)過預(yù)習(xí)、聽課、復(fù)習(xí)、作業(yè)四個(gè)環(huán)節(jié)的學(xué)習(xí),對于這門課的理論知識有了一定了解,才便于我們的上機(jī)課程,理論與上機(jī)的結(jié)合這樣才有助于我們更好的掌握知識。
在數(shù)據(jù)庫上機(jī)中主要是用到的SQL(Structured
Query
Language)結(jié)構(gòu)化查詢語言,它是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。同時(shí)也是數(shù)據(jù)庫腳本文件的擴(kuò)展名。可以幫我們做到面向數(shù)據(jù)庫執(zhí)行查詢、取回?cái)?shù)據(jù)、插入新的記錄、更新數(shù)據(jù)庫中的數(shù)據(jù)、刪除記錄、創(chuàng)建新數(shù)據(jù)庫、新表和視圖、設(shè)置表、存儲(chǔ)過程和視圖的權(quán)限,功能非常強(qiáng)大。
學(xué)習(xí)數(shù)據(jù)庫的內(nèi)容是從數(shù)據(jù)庫、數(shù)據(jù)表的創(chuàng)建和修改開始的,表是建立關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數(shù)據(jù)、刪除表中的數(shù)據(jù)及修改表和刪除表的操作。從課程中中讓我更明白一些知識,表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫的成敗,表的內(nèi)容是越具體越好,但是也不能太繁瑣,以后在實(shí)際應(yīng)用中多使用表,對表的規(guī)劃和理解就會(huì)越深刻。在編程方面是需要我們對于編程有邏輯思維能力及一定的編程技巧。在數(shù)據(jù)庫中插入表、表中的信息等都需要注意,不然很容易出錯(cuò)。
通過上機(jī)練習(xí)讓我比較容易的掌握理論知識的難點(diǎn),以及一些平時(shí)不注意的問題,在上機(jī)練習(xí)的過程中需要對每個(gè)細(xì)節(jié)都要留心,這樣才不至于出錯(cuò),這就加強(qiáng)了我們對平時(shí)不注意的問題得到回應(yīng),從而加深了細(xì)節(jié)問題的處理方式。在上機(jī)的學(xué)習(xí)之后更加了解了表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫的成敗,表的內(nèi)容應(yīng)該如何設(shè)置比較好一些,需要具體,但是避免繁瑣,對表的概念和應(yīng)用有了更深的理解。
上機(jī)的學(xué)習(xí)中也了解到數(shù)據(jù)庫的視圖和查詢。查詢可以通過SQL語言進(jìn)行完成,這樣加深了查詢語句的基本結(jié)構(gòu),讓我們能更好的掌握其中語句,方便于我們后面的學(xué)習(xí)和應(yīng)用;在視圖的操作中,也了解到了視圖是常見的數(shù)據(jù)庫對象,是提供查看和存取數(shù)據(jù)的另一種途徑,對查詢執(zhí)行的其中一些操作,可以使用視圖來完成。視圖的功能也是強(qiáng)大的,使用視圖不僅可以簡化數(shù)據(jù)操作,還可以提高數(shù)據(jù)庫的安全性,不僅可以檢索數(shù)據(jù),也可以通過視圖向基表中添加、修改和刪除數(shù)據(jù)。
在學(xué)習(xí)過程中也遇到了不少問題,積極詢問老師,和同學(xué)共同商討,查詢資料把問題得以解決,培養(yǎng)了解決問題的能力,查閱資料是很好的手段,在今后的學(xué)習(xí)過程中應(yīng)該繼續(xù)發(fā)揚(yáng)這些能力。數(shù)據(jù)庫的學(xué)習(xí)是在學(xué)習(xí)與探索中度過的,短暫的課程時(shí)間的學(xué)習(xí)是結(jié)束了,但其中學(xué)到了許多知識,也有諸多的問題需要今后去解決,學(xué)習(xí)一門課程,學(xué)到的是如何學(xué)會(huì),而不是隨隨便便的學(xué)完,在今后還要自己強(qiáng)化各方面的知識,真正學(xué)以致用。通過這次的學(xué)習(xí),我了解了數(shù)據(jù)庫的概念與重要性,還有今后的發(fā)展方向,明白數(shù)據(jù)庫的應(yīng)用是廣泛的,不可小覷,在今后應(yīng)該再進(jìn)行加強(qiáng)學(xué)習(xí)。