數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)報(bào)告_第1頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)報(bào)告_第2頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)報(bào)告_第3頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)報(bào)告_第4頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、重慶交通大學(xué)信息科學(xué)與工程學(xué)院設(shè)計(jì)性實(shí)驗(yàn)報(bào)告專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 班 級(jí): 2015 級(jí) 4 班 學(xué) 號(hào): 631507020418 姓 名: 張 再 朝 課 程 名 稱: 數(shù)據(jù)庫(kù)原理課程實(shí)驗(yàn) 實(shí)驗(yàn)項(xiàng)目性質(zhì): 設(shè)計(jì)性實(shí)驗(yàn) 實(shí)驗(yàn)所屬課程: 數(shù)據(jù)庫(kù)原理B 實(shí)驗(yàn)室(中心): 軟件與通信實(shí)驗(yàn)室 指 導(dǎo) 教 師 : 王家偉 實(shí)驗(yàn)完成時(shí)間: 2017 年 11 月 25 日總 成 績(jī)教師簽名23 / 23文檔可自由編輯打印此頁(yè)必須保留評(píng)分標(biāo)準(zhǔn)及成績(jī)實(shí)驗(yàn)名稱評(píng)分細(xì)則評(píng)分實(shí)驗(yàn)四報(bào)告表述的清晰程度和完整性(20分)概念模型的合理性(實(shí)驗(yàn)一內(nèi)容)(10分)邏輯模型的合理性(實(shí)驗(yàn)一內(nèi)容)(10分)功能合理性(

2、20分)功能完善性(10分)個(gè)人體會(huì)(10分)實(shí)驗(yàn)二10分實(shí)驗(yàn)三10分總成績(jī)總體實(shí)驗(yàn)要求:1 排版要求標(biāo)題用黑體四號(hào),段前、段后距6磅(或0.3行);正文用小四號(hào)宋體,行距為1.5倍行距。報(bào)告必須生成目錄,目錄必須帶頁(yè)碼。2 設(shè)計(jì)報(bào)告需要打印,裝訂,1份/人,理論課考試時(shí)交設(shè)計(jì)報(bào)告。3 各班學(xué)習(xí)委員收集每位同學(xué)做的成果,包含數(shù)據(jù)庫(kù)的備份、程序源代碼和運(yùn)行配置說(shuō)明,并將每位同學(xué)的成果拷貝到軟件與通信實(shí)驗(yàn)室的教師機(jī)上。第一部分 實(shí)驗(yàn)四目 錄報(bào)告正文4一、實(shí)驗(yàn)?zāi)康?二、實(shí)驗(yàn)題目4三、實(shí)驗(yàn)涉及儀器設(shè)備和材料清單(或軟件)4四、實(shí)驗(yàn)原理5五、實(shí)驗(yàn)內(nèi)容5六、實(shí)驗(yàn)步驟及代碼分析6七、實(shí)驗(yàn)結(jié)果及分析8實(shí)驗(yàn)體會(huì)

3、11實(shí)驗(yàn)二 表查詢13一 實(shí)驗(yàn)要求13二 實(shí)驗(yàn)結(jié)果14實(shí)驗(yàn)三 對(duì)象的建立與數(shù)據(jù)更新操作17一 實(shí)驗(yàn)要求17二 實(shí)驗(yàn)結(jié)果19報(bào)告正文一、實(shí)驗(yàn)?zāi)康?、掌握ODBC的概念并學(xué)習(xí)使用ODBC訪問(wèn)數(shù)據(jù)庫(kù); 2、學(xué)習(xí)Visual C+下如何通過(guò)ODBC訪問(wèn)數(shù)據(jù)庫(kù); 3、學(xué)習(xí)用Visual C+制作簡(jiǎn)單數(shù)據(jù)庫(kù)應(yīng)用程序的方法。 二、實(shí)驗(yàn)題目某大學(xué)需要使用計(jì)算機(jī)管理學(xué)生信息、成績(jī)信息等,要求如下:1、學(xué)生信息管理,包含學(xué)生的基本信息,如學(xué)號(hào)、姓名、性別、出生日期等;還要包含學(xué)生的簡(jiǎn)歷、社會(huì)關(guān)系等;2、課程管理,包含整個(gè)學(xué)校開(kāi)設(shè)的所有課程;3、教學(xué)計(jì)劃管理,包含設(shè)定各系各專業(yè)在哪學(xué)期開(kāi)設(shè)什么樣的課程,學(xué)分是多少;

4、4、學(xué)生選課管理,包含學(xué)生在某學(xué)期選擇什么樣的課程;5、學(xué)生成績(jī)管理,包含學(xué)生各課程的成績(jī)、是否補(bǔ)考、補(bǔ)考成績(jī);6、學(xué)生獎(jiǎng)懲管理,管理學(xué)生在校期間所獲得的獎(jiǎng)勵(lì)和懲罰記錄。根據(jù)實(shí)驗(yàn)一的結(jié)果,完成設(shè)計(jì)。可以根據(jù)自己的實(shí)際情況實(shí)現(xiàn)一部分也可。三、實(shí)驗(yàn)涉及儀器設(shè)備和材料清單(或軟件)操作系統(tǒng):Windows10軟件:Visual Studio Professional 2017,Power Designer 15.1實(shí)現(xiàn)語(yǔ)言:C#開(kāi)發(fā)平臺(tái):.NET Framework 4數(shù)據(jù)庫(kù):SQL Server 2014四、實(shí)驗(yàn)原理 Microsoft推出的ODBC(Open Database Connectiv

5、ity)技術(shù)為異質(zhì)數(shù)據(jù)庫(kù)的訪問(wèn)提供了統(tǒng)一的接口。ODBC基于SQL(Structured Query Language),并把它作為訪問(wèn)數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)。這個(gè)接口提供了最大限度的相互可操作性:一個(gè)應(yīng)用程序可以通過(guò)一組通用的代碼訪問(wèn)不同的數(shù)據(jù)庫(kù)管理系統(tǒng)。一個(gè)軟件開(kāi)發(fā)者開(kāi)發(fā)的客戶/服務(wù)器應(yīng)用程序不會(huì)被束定于某個(gè)特定的數(shù)據(jù)庫(kù)之上。ODBC可以為不同的數(shù)據(jù)庫(kù)提供相應(yīng)的驅(qū)動(dòng)程序。 ODBC的靈活性表現(xiàn)在以下幾個(gè)方面: ·應(yīng)用程序不會(huì)受制于某種專用的API ·SQL語(yǔ)句以源代碼的方式直接嵌入在應(yīng)用程序中 ·應(yīng)用程序可以以自己的格式接收和發(fā)送數(shù)據(jù) ·ODBC的設(shè)計(jì)完全和I

6、SO Call-Level Interface兼容 ·現(xiàn)在的ODBC數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序支持55家公司的數(shù)據(jù)產(chǎn)品 最新推出的ODBC 3.0已經(jīng)升級(jí)到32位,支持Win32。 在C#中,提供了良好的數(shù)據(jù)庫(kù)支持。輸入數(shù)據(jù)源是遵循開(kāi)放式數(shù)據(jù)庫(kù)互接(ODBC)標(biāo)準(zhǔn),還是微軟的數(shù)據(jù)訪問(wèn)對(duì)象(DAO)標(biāo)準(zhǔn),或OLE數(shù)據(jù)庫(kù)(OLE DB)標(biāo)準(zhǔn)。ODBC功能在數(shù)據(jù)庫(kù)管理系統(tǒng),如Microsoft Access、Oracle或dBase的特定的驅(qū)動(dòng)程序中實(shí)現(xiàn)。C#提供了一個(gè)ODBC驅(qū)動(dòng)程序的集合;其他的可從經(jīng)銷商那里買到。實(shí)驗(yàn)中即利用ODBC接口來(lái)創(chuàng)建.NET下的數(shù)據(jù)庫(kù)支持。 五、實(shí)驗(yàn)內(nèi)容1、建立概念模型

7、2、利用Power Designer生成的SQL語(yǔ)句建立相關(guān)數(shù)據(jù)表3、利用C#進(jìn)行相關(guān)軟件開(kāi)發(fā)六、實(shí)驗(yàn)步驟及代碼分析查詢部分:private void 查詢課程ToolStripMenuItem_Click(object sender, EventArgs e) string CommandString = "select * from Course" try OdbcDataAdapter adapter = new OdbcDataAdapter(CommandString, odbcConnection); DataSet ds = new DataSet(); ad

8、apter.Fill(ds); dataGridView1.DataSource = ds.Tables0.DefaultView; odbcConnection.Close(); catch (OdbcException ex) MessageBox.Show(ex.Message); 錄入成績(jī),利用數(shù)據(jù)源自動(dòng)更新 private void button2_Click(object sender, EventArgs e) OdbcCommandBuilder ocd = new OdbcCommandBuilder(adapter); try adapter.Update(ds); cat

9、ch (Exception ex) MessageBox.Show(ex.Message); this.Close(); return; MessageBox.Show("成功"); this.Close(); 更改成績(jī),利用數(shù)據(jù)源自動(dòng)更新 private void button1_Click(object sender, EventArgs e) /dataGridView1.DataSource = null; ds.Clear(); dataGridView1.Update(); string CommandString = "select * from S

10、core where Score.CourseNo='" + textBox1.Text + "' " try adapter = new OdbcDataAdapter(CommandString, odbcConnection); adapter.Fill(ds); dataGridView1.DataSource = ds.Tables0.DefaultView; odbcConnection.Close(); catch (OdbcException ex) MessageBox.Show(ex.Message); private void

11、 button2_Click(object sender, EventArgs e) OdbcCommandBuilder ocd = new OdbcCommandBuilder(adapter); try adapter.Update(ds); catch (Exception ex) MessageBox.Show(ex.Message); this.Close(); return; MessageBox.Show("成功"); this.Close(); 七、實(shí)驗(yàn)結(jié)果及分析登錄界面:查詢界面:增加界面:修改界面:刪除界面:實(shí)驗(yàn)體會(huì)通過(guò)本次實(shí)驗(yàn),我明白了數(shù)據(jù)庫(kù)中的各種

12、操作是怎么回事,這些操作有增加,修改和刪除,基于這些操作,完成了學(xué)生信息管理系統(tǒng)。在用C#完成系統(tǒng)的過(guò)程中,重新回顧了高級(jí)程序設(shè)計(jì)語(yǔ)言編程的基本語(yǔ)法和思想,由此讓我產(chǎn)生了許多學(xué)習(xí)的心得:在上理論課的時(shí)候,要把筆記做好,課堂上的重點(diǎn)內(nèi)容需要記錄下來(lái),尤其是關(guān)于技術(shù)方面的知識(shí),這些知識(shí)的貫通需要通過(guò)應(yīng)用來(lái)實(shí)現(xiàn),在實(shí)驗(yàn)的實(shí)踐過(guò)程中把理論知識(shí)用起來(lái),達(dá)到活學(xué)活用的目的。在完成了本次實(shí)驗(yàn)之后,我對(duì)于SQL代碼的掌握更熟練了,而且對(duì)于C#語(yǔ)法的認(rèn)識(shí)更深刻,在做出體現(xiàn)面向?qū)ο蟮某绦虻哪芰ι?,有所進(jìn)步。第二部分 實(shí)驗(yàn)二、實(shí)驗(yàn)三目 錄實(shí)驗(yàn)二 表查詢13一 實(shí)驗(yàn)要求13二 實(shí)驗(yàn)結(jié)果14實(shí)驗(yàn)三 對(duì)象的建立與數(shù)據(jù)更新

13、操作17一 實(shí)驗(yàn)要求17二 實(shí)驗(yàn)結(jié)果19實(shí)驗(yàn)二 表查詢一 實(shí)驗(yàn)要求根據(jù)給定的樣例數(shù)據(jù)庫(kù)pubs,完成以下查詢操作。1、無(wú)條件查詢 1) 查找pub庫(kù)中authors表的全部信息。 2) 查找其他樣例表中全部信息。 2、簡(jiǎn)單條件查詢 1) 查找titles表中全部書號(hào)及書名。 2) 查找titles 表中價(jià)格在$1518 元之間的書的書名。 3) 查找titles 表中書名以T 開(kāi)頭的書號(hào), 書名。 4) 對(duì)其他樣例表構(gòu)造各種簡(jiǎn)單查詢條件,進(jìn)行查詢。 3、多條件查詢 1) 查找書名起始字符為T,價(jià)格小于$16元的書名及價(jià)格。 2) 查找書名起始字符不為T的, 價(jià)格大于$16元的書號(hào), 書名及價(jià)格

14、。 3) 對(duì)其他樣例表構(gòu)造多個(gè)查詢條件,進(jìn)行查詢。 4、用連接操作(或嵌套查詢)進(jìn)行查詢 1) 使用樣例表titles, publishers 進(jìn)行查詢: 查找出版社的名稱以及所出的書名。 2) 使用樣例表authors, titleauthor, titles進(jìn)行查詢: 查找作者的姓、名和所寫的書名。 3) 對(duì)構(gòu)造其他條件,在兩個(gè)以上樣例表中進(jìn)行查詢。 5、得到排序的查詢結(jié)果 1)查找作者的姓、名、電話號(hào)碼,并按作者姓、名排列。 2)查找書名和書的價(jià)格,按書價(jià)由大到小的次序排列。 3)對(duì)其他樣例表構(gòu)造查詢條件、排序要求,給出查詢結(jié)果。 6、使用函數(shù)進(jìn)行查找 1)列出有多少類書。 2)列出書的

15、定價(jià)有多少種。 3)列出書價(jià)最低的書名和書價(jià)。 4)查出書價(jià)最高的書名及書價(jià)。 5)列出當(dāng)年銷量的總和。 6)構(gòu)造其他查詢條件和統(tǒng)計(jì)要求,給出查詢結(jié)果。二 實(shí)驗(yàn)結(jié)果select *from authorsselect *from discountsselect *from salesselect *from titlesselect *from employeeselect *from jobsselect *from pub_infoselect *from publishersselect *from royschedselect *from storesselect *from titl

16、eauthorselect title_id,titlefrom titlesselect titlefrom titles where price>15 and price<18select title_id,titlefrom titleswhere title like 'T%'select title_id,title,pub_idfrom titleswhere pub_id<1000select price,titlefrom titleswhere price<16 and title like 'T%'select tit

17、le_id,title,pricefrom titleswhere title not like 'T%' and price>16select title_id,title,pricefrom titleswhere title not like 'T%' and price<=16select pub_name,titlefrom titles,publisherswhere titles.pub_id=publishers.pub_idselect au_lname,au_fname,titlefrom authors,titleauthor,

18、titleswhere titles.title_id=titleauthor.title_id and titleauthor.au_id=authors.au_idselect city,titlefrom titles,publisherswhere titles.pub_id=publishers.pub_idselect au_fname,au_lname,phonefrom authorsorder by au_fname,au_lnameselect title,pricefrom titlesorder by price descselect title,pricefrom t

19、itlesorder by price ascselect COUNT(distinct type) as 書的種類from titlesselect COUNT(distinct price) as 定價(jià)種類from titlesselect title,pricefrom titleswhere price=(select min(price)from titles)select title,pricefrom titleswhere price=(select max(price)from titles)實(shí)驗(yàn)三 對(duì)象的建立與數(shù)據(jù)更新操作一 實(shí)驗(yàn)要求1 創(chuàng)建和修改對(duì)象(1)創(chuàng)建表對(duì)象 按照

20、下面的的結(jié)構(gòu)與內(nèi)容建兩個(gè)關(guān)系。表名分別以S、T 開(kāi)頭,后面是建表人的學(xué)號(hào)(以下簡(jiǎn)記為T*、S* )。先用create table 命令建立表的初始結(jié)構(gòu),表T*的初始結(jié)構(gòu)包括下面T*中前四個(gè)屬性。然后再用alter table .add. 添加一個(gè)屬性: QTY(庫(kù)存量)。并插入相應(yīng)的內(nèi)容。T* Title author t_nopriceQTY計(jì)算機(jī)原理張一平S3092 20.80 200 C語(yǔ)言程序設(shè)計(jì)李華H1298 15.30 300 數(shù)據(jù)庫(kù)原理王家樹(shù)D1007 22.70 150 計(jì)算機(jī)網(wǎng)絡(luò)高明S5690 18.90 230 Artificial intelligence P.Winst

21、on D2008 20.50 400 Expert systems R.Ullman H3067 17.00 370 軟件工程魯廷璋S2005 35.00 200 Fortran 程序設(shè)計(jì)顧學(xué)峰S5006 18.00 180 S* T_no Page pub-date S3092 304 1986 D1007 280 1993 S5006 315 1987 S5690 300 1993 H1298 210 1989 D2008 358 1994 S2005 298 1995 H3067 307 1995 (2)用alter table.alter column.改變屬性title 的長(zhǎng)度。 (

22、3)用子查詢方式建新表。表名以ST 開(kāi)頭, 后面為建表人學(xué)號(hào)(簡(jiǎn)記為ST* )。 (新表內(nèi)須包括title和price 兩個(gè)屬性。) (4)按t_no 建索引,索引名為IT* (*表示建表人的學(xué)號(hào),下同)。 (5)用子查詢方式建視圖,視圖名為VT* , 并在視圖上查找所需信息。 (6)刪除以VT* 命名的視圖。 (7)刪除以ST* 命名的表。 2、記錄的插入、刪除與更新 (1)同前,用子查詢方式建立表ST* 。該表的屬性應(yīng)有t_no, title, price。 (2)在ST* 表中插入一元組: S7028, Digital Image Processing, 36.00 (3)刪除書名為“F

23、ortran 程序設(shè)計(jì)”的那個(gè)元組。 (4)刪除書號(hào)以H 開(kāi)頭的元組。 (5)把書價(jià)調(diào)整到原來(lái)價(jià)格的95% 。 (6)把書號(hào)以D 開(kāi)頭的那些書的書價(jià)減掉2.00元。 (7)將“計(jì)算機(jī)原理”的書號(hào)改為S1135。 (8)對(duì)所建的表,進(jìn)行各種插入、刪除、更新操作。 (9)每次修改表后,可用select 查看一下修改后表中的內(nèi)容,看是否滿足要求。 3、統(tǒng)計(jì) (1)計(jì)算T* 表中這些書籍的最高書價(jià)、最低書價(jià)及平均書價(jià)。 (2)計(jì)算T* 表中的書的種類是多少。 (3)計(jì)算S* 表中1990年后出版的書有多少。 (4)計(jì)算總共有多少本書。 (5)對(duì)樣例表,設(shè)計(jì)統(tǒng)計(jì)要求,獲得各種統(tǒng)計(jì)量。 二 實(shí)驗(yàn)結(jié)果/*

24、1 */*(1)*/create database studentuse studentcreate table T631507020418(Title varchar(30),author varchar(15),t_no char(6),price numeric(6,2) )insert into T631507020418(Title,author,t_no,price)select '計(jì)算機(jī)原理','張一平','S3092','20.8'union allselect 'C語(yǔ)言程序設(shè)計(jì)','李華&

25、#39;,'H1298','15.3'union allselect '數(shù)據(jù)庫(kù)原理','王家樹(shù)','D1007','22.7'union allselect '計(jì)算機(jī)網(wǎng)絡(luò)','高明','S5690','18.9'union allselect 'Artificial intelligence','P.Winston','D2008','20.5'union allselec

26、t 'Expert systems','R.Ullman','H3067','17'union allselect '軟件工程','魯廷璋','S2005','35'union allselect 'Fortran程序設(shè)計(jì)','顧學(xué)峰','S5006','18'alter table T631507020418add QTY intupdate T631507020418 set QTY=200 wher

27、e t_no='S3092'update T631507020418 set QTY=300 where t_no='H1298'update T631507020418 set QTY=150 where t_no='D1007'update T631507020418 set QTY=230 where t_no='S5690'update T631507020418 set QTY=400 where t_no='D2008'update T631507020418 set QTY=370 where t_n

28、o='H3067'update T631507020418 set QTY=200 where t_no='S2005'update T631507020418 set QTY=180 where t_no='S5006'create table S631507020418(T_no char(6),page int,pub_date date)insert into S631507020418select 'S3092','304','1986'union allselect 'D1007

29、','280','1993'union allselect 'S5006','315','1987'union allselect 'S5690','300','1993'union allselect 'H1298','210','1989'union allselect 'D2008','358','1994'union allselect 'S2005','298','1995'union allselect 'H3067','307','1995'/*(2)*/alter table T631507020418alter column Title varchar(35)/*(3)*/select Title,price into ST631507020418 from T631507020418/*(4)*/create index IT63on T631507020418(t_no

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論