數據庫實習報告_第1頁
數據庫實習報告_第2頁
數據庫實習報告_第3頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、數據庫系統課程設計學 號: 學生姓名: 班 號: 指導教師:中國地質大學信息工程學院2012年3月3日=數據庫實習報告教務管理系統一、需求分析1、首先要明確各個實體間的屬性:a. 教師:工作證號,姓名,職稱,電話,系別;b. 學生:學號,性別,班級,系別,出生年月;d. 系別:系代號,系名,系辦,公室電話;e. 課程:課序號,課名,學分,上課時間,名額。2、各個實體之間的聯系:a. 每個學生都屬于一個班;.每個教師也都屬于一個系,每個班的班主任都由一名教師擔任;d. 一名教師可以教多門課,一門課可以有幾位主講老師;e. 一名同學可以選多門課,一門課可被若干同學選中,一名同學選中的課若已 學完,

2、應該記錄有相應成績。3、總需求:本單位學生、教師都有重名,工作證號、學號可以作為標識。教學系統主要提供數據維護、選課和信息查詢。常見的查詢有:系統中各對象的基本信息查詢;查詢指定班、系的學生信息(名單、人數等);查詢學生的成績、學分情況;查詢教師授課情況和學生選課情況等。二、概念設計1、概念模型(E-R圖):a.授課關系E-R圖b.選課關系E-R圖學生詵i昧殺肚劉電話:Ttelepho nt, char, 11 學號:Sno, char, 10 性別:Ssex, char, 2 出生年月:Sbirthday, date, 姓名:Sn ame, char, 20 課序號:Cno, char, 1

3、02、數據字典:a.數據項系名:Dname, char, 20系代號:Dno, char, 3系辦公室電話:Dtelepho nt, char, 11職稱:Ttitle, char, 20工作證號:Tno, char, 10姓名:Tname, char, 20學分:Credit, float, 2 成績:Grade, i nt課名稱:Cn ame, char, 20 上課時間:Ctime, datetime 名額:Cn umber, i ntb. 數據結構學生=學號、姓名、性別、出生年月教師=工作證號、教師姓名、職稱、電話、所在系的系號系=系代號、系名、系辦公室電話 課程=課序號、課名、學分、

4、上課地點、名額、授課教師的工作證號 選課=學號、課序號、成績c. 數據流(說明,數據流來源,數據流去向)=查詢系信息,系代號,系信息=變更教師信息,變更信息,教師信息=查詢教師信息,工作證號,教師信息=變更學生信息,變更信息,學生信息=查詢學生信息,學號,學生信息=變更課程信息=查詢課程信息學號,變更信息,課程信息,課序號,課程信息,學號或課序號,選課信息,工作證號,授課信息選課信息變更系信息=變更系信息,變更信息,系信息 查詢系信息 變更教師信息 查詢教師信息 變更學生信息 查詢學生信息 變更課程信息 查詢課程信息 學生選課=課程號, 查詢選課信息 =查詢選課信息 查詢授課信息 =查詢授課信

5、息 查詢成績=查詢成績, 學號&課程號,三、邏輯結構設計1關系模型教師(工作證號,姓名,職稱,電話,系代號)學生(學號,姓名,性別,出生年月)系(系代號,系名,系辦公室電話)課程(課序號,課名,學分,上課時間,名額,工作證號)選課(學號,課序號,成績)2、用戶視圖教師信息視圖(工作證號,教師姓名,職稱,電話,負責班級)學生信息視圖(學號,姓名,性別,出生年月,班號)系信息視圖(系代號,系名,系辦公室電話)選課信息(課程號,學號)課程信息(課程號,課程名稱,學分,上課時間,名額,授課老師)五、系統實施完成數據庫的物理設計之后,設計人員就要用RDBMS提供的數據定義語言和其他實用 程序設計

6、和物理設計結果嚴格的描述出來,成為DMBMS可以接受的源代碼,再經過調試產生目標模式。然后就可以組織數據入庫了,這就是數據庫實施階段。數據庫實施階段包括兩項重要的工作:1. 數據的載入:直接在SQL2012中建立 教師,學生,選課,系,課程六個表。運用ODBC,建立mysql的服務器,關聯到 VB中。六、運行維護1、數據庫試運行數庫的試運行階段要實際運行數據庫應用程序,執行對數據庫的各種操作,測試應用程序的功能是否滿足設計要求。如果不滿足,對應用程序部分則要修改、調整,知道達到設計要求為止。這一階段特別強調兩點,第一該是分期分批的組織數據入庫,先輸入少量數據做調試用,待試運行基本合格后,再大批

7、量的輸入數據。第二首先調試運行數據庫管理系統的恢復功能,做好數據庫的轉儲和恢復工作,一旦故障發生,能使數據庫盡快恢復,盡量減少數據庫的破壞。2、數據庫的維護數據庫的轉儲和恢復試系統正式運行后最重要的維護工作之一。要針對不同的應用要求制定不同的轉儲計劃, 以保證一旦發生故障能夠盡快將數據庫恢復到某種一致狀態,并盡可能減少對數據庫的破壞。數據庫運行階段,主要是由數據庫管理員完成經常性的維護工作。主要包括:a. 數據庫的轉儲和恢復;b. 數據庫的安全性、完整性控制;c. 數據庫性能的監督、分析和改造;d. 數據庫的重組織與重構造。七、小結兩個周的數據庫實習課程結束了,雖然數據庫的設計工作完成的并不好

8、,但是在這個 過程中還是有些收獲。首先,我知道了數據庫的設計工作是有章可循的,可以按照一定的步驟、有規律的進行設計。 數據庫可以按階段進行設計,在各個階段有不同的目標,應遵循的原則和方法也各不相同,還有一些應該注意的事項等等。其中的重點是概念結構的設計和邏 輯結構的設計,這也是整個數據庫設計過程中最重要的兩個環節。人們在評述數據庫的特點時說,“三分技術,七分管理,十二分的基礎數”,在數據庫建設中不僅涉及技術,還涉及管理,要建設好一個數據庫應用系統,開發技術固然重要,但是相比之下管理更為重要。 其次,對數據庫設計的各個階段也有了初步認識。在需求分析階段,主要的任務是通過詳細的調查現實世界重要處理

9、的對象,明確用戶的各種需求, 然后在此基礎上確定新系統的功能,簡單地說,也就是分析用戶的需求, 它是設計數據庫的起點,需求分析的準確與否直接關系到后面各個階段的設計。在概念結構設計階段,要根據需求分析的結果抽象為信息結構,主要就是通過ER圖來表現,不僅要考慮整個數據庫的結構,還要注意子模式仕途的細節,它是 整個數據庫設計的關鍵。在邏輯結構的設計階段,主要任務就是把概念結構設計階段設計好 的基本E-R圖轉換為數據庫管理系統產品所支持的數據模型相符合的邏輯結構,是獨立于 任何一種數據模型的信息結構。在物理結構設計階段, 通常分為兩步,先確定數據庫的存取方法和存儲結構,后對物理結構進行評價,評價重點

10、是在時間和空間效率,如果評價的結果滿足設計要求,則可進入物理實施階段, 否則,就需要重新設計或修改物理結構,有時甚至需要邏輯設計階段修改數據模型。完成數據庫的物理設計之后,就要用數據庫管理系統提供 的數據定義語言和其他實用程序將數據庫邏輯設計和物理設計結果嚴格的表示出來,這是還需要進行調試。這些都是一些理論方法, 還是需要在實際工作中運用這些思想,遵守設計原則,注意各階段工作的細節,才能完成好數據庫設計工作。在以后的學習中會更加注意這些 細節問題,這樣才會有所提高。八、附錄VB源代碼:1登陸界面代碼:Private Sub Comma nd1_Click()Dim rpt As In tege

11、rIf Text1.Text = "20121003818" ThenIf Text2.Text = "123456" ThenIf Text3.Text = Label4.Capti on The nForm5.HideForm1.ShowElserpt = MsgBox("驗證碼錯誤", vbRetryCancel + vbExclamation,"驗證碼") If rpt = vbRetry ThenText3.Text =""Text3.SetFocusEnd IfEnd IfElser

12、pt = MsgBox("密碼錯誤", vbRetryCancel + vbExclamation,"密碼")If rpt = vbRetry ThenText2.Text =""Text2.SetFocusEnd IfEnd IfElserpt = MsgBox("用戶名錯誤", vbRetryCancel + vbExclamation,"用戶名")If rpt = vbRetry The nText1.Text =""Text1.SetFocusEnd IfEnd If

13、End SubPrivate Sub Comma nd2_Click()Form7.ShowForm5.HideEnd SubPrivate Sub Form_Load()Label5.Fo ntSize = 15 Label5.ForeColor = vbRed Ran domizeDim x As Longx = In t(90000 * Rn d(0) + 10000 Label4.Capti on = xEnd Sub2 .學生信息界面代碼:Private sqlco n As New ADODB.Co nn ectionPrivate sqlres As New ADODB.Reco

14、rdsetPrivate sqlcmd As New ADODB.Comma nd Dim sqlstr As Stri ngPrivate Sub Comma nd1_Click()MakeSqIStrAdodc1.RecordSource = "select *from 學生 where 學號="& sqlstrAdodc1.RefreshEnd SubPrivate Sub Comma nd2_Click()ret = MsgBox("是否要刪除"+ Adodc1.Recordset("學號")+ "號學生的記

15、錄", vbYesNo,"提示") If ret = vbYes The nsqlcmd.ActiveC onn ectio n = sqlc onsqlcmd.CommandText = "delete from 學生 where 學號="+ Adodc1.Recordset("學號") sqlcmd.ExecuteAdodc1.RecordSource = "select * from 學生”Adodc1.RefreshEnd IfEnd SubPrivate Sub Comma nd3_Click()Dim

16、sqlupstr As Stringsqlupstr = "select * from 學生 where 學號="& Trim(Textl.Text)sqlres.Ope n sqlupstr, sqlc on, adOpe nDyamic, adLockPessimisticIf Not sqlres.EOF The nElsesqlres.AddNewsqlres("學號")=Textl.Textsqlres("姓名")=Text2.Textsqlres("性別")=Text3.Textsqlres(&

17、quot;出生日期")=Text4.Textsqlres("系代號")=Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodcl.RecordSource = "select * from 學生”AdodcI.RefreshEnd SubPrivate Sub Comma nd4_Click()Dim sqlupstr As Stringsqlupstr = "select *from 學生 where 學號="& Trim(Text1.Text) sqlres.Ope n sqlupst

18、r, sqlc on, adOpe nDyamic, adLockPessimistic If Not sqlres.EOF The nElsesqlres.AddNewsqlres("學號")=Text1.Textsqlres("姓名")=Text2.Textsqlres("性別")=Text3.Textsqlres("出生日期")=Text4.Textsqlres("系代號")=Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodc1.RecordSou

19、rce = "select * from 學生”Adodc1.RefreshEnd SubPrivate Sub Form_Load()sqlco n.Provider = "SQLOLEDB"sqlcon.Open "Server=Y500-X64SQLEXPRESS;DataBase=教務管理系統;UID=sa;PWD=;"End SubPrivate Sub Form_Unl oad(Ca ncel As In teger)sqlc on. CloseEnd SubPublic Sub MakeSqlStr() sqlstr ="

20、;"If Trim(Text6.Text) <> "" Then sqlstr = Trim(Text6.Text)End IfIf Trim(Text6.Text) = "" The n sqlstr = Text1.TextEnd IfEnd Sub3. 學生課程成績代碼:Private sqlcon As New ADODB.Co nn ectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.Comma ndDim sqlstr As Str

21、ingPrivate Sub Comma nd1_Click()MakeSqlStrAdodc1.RecordSource = "select *from 選修,學生 where 選修學號="& sqlstrAdodc1.RefreshEnd SubPrivate Sub Form_Load()sqlco n.Provider = "SQLOLEDB"sqlcon.Open "Server=Y500-X64SQLEXPRESS;DataBase=教務管理系統;UID=sa;PWD=;" End SubPublic Sub Ma

22、keSqlStr()sqlstr =""If Trim(Text5.Text) <> "" Thensqlstr = Trim(Text5.Text)End IfIf Trim(Text5.Text) <> "" The nsqlstr = Text2.TextEnd IfEnd SubPrivate Sub Form_Unl oad(Ca ncel As In teger) sqlc on .CloseEnd SubPrivate Sub Image1_Click()Form1.Picture = LoadP

23、icture(picturefile) End Sub4. 教師信息代碼:Private sqlcon As New ADODB.Co nn ectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.Comma ndDim sqlstr As StringPrivate Sub Comma nd1_Click()教師 where工作證號="& sqlstrMakeSqlStrAdodc1.RecordSource = "select *fromAdodc1.RefreshEnd Su

24、bPrivate Sub Comma nd2_Click() ret = MsgBox("是否要刪除 ” + AdodcI.Recordset(”工作證號”)+ "號教師的記錄 ” vbYesNo,"提示”)If ret = vbYes The nsqlcmd.ActiveC onn ectio n = sqlc onsqlcmd.CommandText = "delete from 教師 where 工作證號="+ Adodc1.Recordset("工作 證號”)sqlcmd.ExecuteAdodc1.RecordSource

25、= "select * from 教師"Adodc1.RefreshEnd IfEnd SubPrivate Sub Comma nd3_Click()Dim sqlupstr As Stringsqlupstr = "select * from 教師 where 工作證號="& Trim(Textl.Text)sqlres.Ope n sqlupstr, sqlc on, adOpe nDyamic, adLockPessimisticIf Not sqlres.EOF The nElsesqlres.AddNewsqlres("工作

26、證號")=Textl.Textsqlres("姓名")=Text2.Textsqlres("職稱")=Text3.Textsqlres("電話")=Text4.Textsqlres("系代號")=Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodcl.RecordSource = "select * from 教師"Adodcl.RefreshEnd SubPrivate Sub Comma nd4_Click()Dim sqlupstr As

27、Stringsqlupstr = "select *from 教師 where 工作證號="& Trim(Textl.Text) sqlres.Ope n sqlupstr, sqlc on, adOpe nDyamic, adLockPessimisticIf Not sqlres.EOF The nElsesqlres.AddNewsqlres("工作證號")=Textl.Text sqlres("姓名")=Text2.Text sqlres("職稱")=Text3.Text sqlres("

28、電話")=Text4.Text sqlres("系代號")=Text5.Text sqlres.UpdateEnd Ifsqlres.CloseAdodcI.RecordSource = "select * from 教師"AdodcI.RefreshEnd SubPrivate Sub Form_Load()sqlco n.Provider = "SQLOLEDB"sqlcon.Open "Server=Y500-X64SQLEXPRESS;DataBase=教務管理系統;UID=sa;PWD=;"En

29、d SubPrivate Sub Form_Unl oad(Ca ncel As In teger)sqlc on .CloseEnd SubPublic Sub MakeSqlStr() sqlstr =""If Trim(Text6.Text) <> "" Then sqlstr = Trim(Text6.Text)End IfIf Trim(Text6.Text) = "" The n sqlstr = Text1.TextEnd IfEnd Sub5. 課程信息代碼:Private sqlcon As New AD

30、ODB.Co nn ectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.Comma nd Dim sqlstr As StringPrivate Sub Comma nd1_Click()MakeSqlStrAdodc1.RecordSource = "select *from 選修 where 課程號 &學號="& sqlstrAdodc1.RefreshEnd SubPrivate Sub Form_Load()sqlco n.Provider = "SQ

31、LOLEDB"sqlcon.Open "Server=Y500-X64SQLEXPRESS;DataBase=教務管理系統;UID=sa;PWD=;"End SubPrivate Sub Form_Unl oad(Ca ncel As In teger)sqlc on .CloseEnd SubPublic Sub MakeSqlStr()sqlstr =""If Trim(Text7.Text) <> "" Thensqlstr = Trim(Text7.Text)End IfIf Trim(Text7.Text) = "" The nsqlstr = Text1.TextEnd IfEnd Sub6. 學生選課:Private sqlcon As New ADODB.Co nn ectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.Comma nd Dim sqlstr As StringDim sqlupstr As StringPriva

溫馨提示

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

評論

0/150

提交評論