




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、word實驗五 VB.NET數(shù)據(jù)庫應(yīng)用程序一、實驗?zāi)康耐ㄟ^本實驗,學(xué)習(xí)和掌握ADO.NET中對象SqlDataAdapter和對象DataSet的應(yīng)用,同時掌握通過綁定對象實現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)瀏覽操作和更新操作。學(xué)習(xí)和掌握ADO.NET中對象SqlCommand的應(yīng)用;學(xué)習(xí)存儲過程的調(diào)用。二、實驗環(huán)境l Microsofe Visual Studio .NET 2022和Book數(shù)據(jù)庫三、 實驗內(nèi)容1. 按書名查詢書的作者、價格和出版社名稱:輸入書名中的局部字或詞,查詢所有相關(guān)書的情況。運(yùn)行效果如下列圖所示。提示:1響應(yīng)“查詢按鈕的click事件,在其中構(gòu)造sql語句,填充數(shù)據(jù)集,并將DataGr
2、idView的數(shù)據(jù)源設(shè)為該數(shù)據(jù)集中的相應(yīng)數(shù)據(jù)表。2構(gòu)造Select語句時:查詢結(jié)果來自T_BookInfo和T_Publisher兩個表;使用Like運(yùn)算構(gòu)造查詢條件,使用As為查詢字段重命名為中文;3利用生成的sql語句,使用SqlDataAdapter對象,填充數(shù)據(jù)集的一個數(shù)據(jù)表,并將其作為DataGridView的數(shù)據(jù)源窗體對象屬性對象屬性設(shè)置值Form1Text書籍查詢Label1Text請輸入書名Textbox1TextButton1Text查詢首先建立一個VB窗體文件。翻開VS2022并建立新工程。得到一個新的窗體。參加相應(yīng)的Label,Textbox,Button及DataGri
3、d需要注意的是,DataGridView在工具箱,數(shù)據(jù)一欄。接下來添加數(shù)據(jù)源以使得GridView視圖可以使用。選中GridView視圖,在屬性欄中找到DataSource這一選項。添加新的數(shù)據(jù)源雙擊按鈕進(jìn)入代碼界面,輸入如下的代碼:Imports System.DataImportsPublic Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim sqlcn As SqlConnection sqlcn = New SqlConnection() s
4、qlcn.ConnectionString = server=DESKTOP-VG5U6QKHANLI;Database=Book;User ID=sa;Password=oymtxdy1011 sqlcn.Open() 翻開連接 Dim dsDA As New SqlDataAdapter() 聲明SqldataAdapter對象 dsDA.SelectCommand = New SqlCommand() 設(shè)置SelectCommand屬性 dsDA.SelectCommand.Connection = sqlcn 設(shè)置連接對象 dsDA.SelectCommand.CommandText
5、= Select BookName AS 書名,Price AS 價格,Publisher AS 出版社 & FROM T_BookInfo a,T_Publisher b & WHERE a.PublisherCode=b.PublisherCode & AND a.BookName LIKE % & Trim(TextBox1.Text) & % Dim dset As New DataSet() 聲明數(shù)據(jù)集對象 dsDA.Fill(dset, book_info) 調(diào)用Fill方法,從數(shù)據(jù)源讀取數(shù)據(jù),并將數(shù)據(jù)填充到數(shù)據(jù)集對象 DataGridView1.DataSource = dset
6、 設(shè)置DatagGridView1對象的數(shù)據(jù)源屬性 DataGridView1.DataMember = book_info 設(shè)置DataGridView1對象的數(shù)據(jù)源之?dāng)?shù)據(jù)表 End SubEnd Class現(xiàn)在運(yùn)行程序。輸入任意關(guān)鍵字進(jìn)行查詢,我這里輸入的是計算機(jī)。視圖中出現(xiàn)了對應(yīng)的數(shù)據(jù)。2. 通過查詢實驗三第11題所創(chuàng)立的視圖view_book3,實現(xiàn)查詢各學(xué)院領(lǐng)書情況,如下列圖所示。提示: 1 查詢學(xué)院使用ComboBox選擇??梢栽诖绑w的Load事件中,先創(chuàng)立數(shù)據(jù)集,使用ComboBox的DataSource屬性設(shè)置數(shù)據(jù)集,使用ComboBox的DisplayMember屬性設(shè)置顯示
7、數(shù)據(jù)集的數(shù)據(jù)字段。2 響應(yīng)學(xué)院ComboBox的Change事件,在其中生成sql語句,填充數(shù)據(jù)表,將數(shù)據(jù)表設(shè)置為DataGridView的DataSource。窗體對象屬性對象屬性設(shè)置值Form1Text學(xué)院領(lǐng)書情況Label1Text選擇學(xué)院ComboBox1TextDataGrid1CaptionText查詢結(jié)果首先建立一個VB窗體文件。翻開VS2022并建立新工程。得到一個新的窗體。將窗體界面設(shè)計成需要的樣子如下:需要注意的是,編輯選項需點(diǎn)開combobox右邊的箭頭選擇編輯項。將選項分行依次輸入即可。之后雙擊Combobox進(jìn)入下拉選擇框并輸入如下的代碼。Imports System
8、.DataImportsPublic Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load TODO: 這行代碼將數(shù)據(jù)加載到表“BookDataSet.view_book3中。您可以根據(jù)需要移動或刪除它。 Me.View_book3TableAdapter.Fill(Me.BookDataSet.view_book3) End Sub Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As Eve
9、ntArgs) Handles ComboBox1.SelectedIndexChanged Dim sqlcn As SqlConnection sqlcn = New SqlConnection() sqlcn.ConnectionString = server=DESKTOP-VG5U6QKHANLI;Database=Book;User ID=sa;Password=oymtxdy1011 sqlcn.Open() 翻開連接 Dim dsDA As New SqlDataAdapter() 聲明SqldataAdapter對象 dsDA.SelectCommand = New SqlC
10、ommand() 設(shè)置SelectCommand屬性 dsDA.SelectCommand.Connection = sqlcn 設(shè)置連接對象 dsDA.SelectCommand.CommandText = Select 教師姓名 ,學(xué)院名稱 ,預(yù)定書名,是否領(lǐng)走 & FROM dbo.view_book3 & WHERE 學(xué)院名稱= & Trim(ComboBox1.Text) & Dim dset As New DataSet() 聲明數(shù)據(jù)集對象 dsDA.Fill(dset, book_info) 調(diào)用Fill方法,從數(shù)據(jù)源讀取數(shù)據(jù),并將數(shù)據(jù)填充到數(shù)據(jù)集對象 DataGridView1
11、.DataSource = dset 設(shè)置DatagGridView1對象的數(shù)據(jù)源屬性 DataGridView1.DataMember = book_info 設(shè)置DataGridView1對象的數(shù)據(jù)源之?dāng)?shù)據(jù)表 End SubEnd Class試運(yùn)行并選擇一個學(xué)院。可以成功執(zhí)行。3. 利用綁定對象編程實現(xiàn)對Book數(shù)據(jù)庫中教材訂購表的信息瀏覽和信息更新,功能界面見下列圖窗體對象屬性對象屬性設(shè)置值Label1Text教材訂購信息查詢GroupBox1Text教材訂購信息瀏覽Label2Text教材編號Label3Text教師編號Label4Text學(xué)生人數(shù)Label5Text教師人數(shù)Label
12、6Text訂購時間Label7Text領(lǐng)取否Label8Text備注Textbox1DataBindings.TextTBookOrderBindingSource.BookCodeTextbox2DataBindings.TextTBookOrderBindingSource.TeacherCodeTextbox3DataBindings.TextTBookOrderBindingSource.StuBookNumTextbox4DataBindings.TextTBookOrderBindingSource.TeaBookNumTextbox5DataBindings.TextTBookO
13、rderBindingSource.TakeAwayTextbox6DataBindings.TextTBookOrderBindingSource.DescriptionDataTimePicker1DataBindings.TextTBookOrderBindingSource.OrderTimeButton1Text|Button2TextButton4Text|Button5Text訂購新教材Button6Text刪除教材Button7Text撤銷更新Button8Text確認(rèn)更新Button9Text退出系統(tǒng)提示:1繪制窗體,添加各種控件。2添加數(shù)據(jù)源 BookDataSet3新增數(shù)
14、據(jù)集對象 BookDataSet14建立相應(yīng)的數(shù)據(jù)綁定 TBookOrderBindingSource5設(shè)置各按鈕的click事件的響應(yīng)代碼第一記錄:Me.TBookOrderBindingSource.Position = 0下一記錄:Me.TBookOrderBindingSource.Position = Me.TBookOrderBindingSource.Position + 1確認(rèn)更新:Me.TBookOrderBindingSource.EndEdit() Me.T_BookOrderTableAdapter.Update(Me.BookDataSet1.T_BookOrder)
15、添加各控件使得窗體如圖:接下來進(jìn)行添加數(shù)據(jù)源的操作。依次點(diǎn)擊工程,添加新數(shù)據(jù)源,如圖。點(diǎn)擊添加工程數(shù)據(jù)源。選擇數(shù)據(jù)庫。點(diǎn)擊下一步。點(diǎn)擊新建連接。在效勞器名中找到本機(jī)效勞器選擇登錄方式,這里使用Window身份驗證或者SQL Server身份驗證皆可。選擇Book數(shù)據(jù)庫單擊下一步至出現(xiàn)下列圖界面這里將表和視圖勾選即可,也可全部勾選。再點(diǎn)擊完成即可完成數(shù)據(jù)源的導(dǎo)入。然后完成DataGridView與數(shù)據(jù)源的數(shù)據(jù)綁定。點(diǎn)擊DataGridView,找到屬性中,DataSource這一欄。點(diǎn)擊DataSource并展開選擇我們要使用的BookDataSet中的T_BookOrder作為對象。這樣窗體就
16、出現(xiàn)了相應(yīng)的窗口。運(yùn)行程序可以看到視圖中出現(xiàn)了相應(yīng)的數(shù)據(jù)接下來添加語句使得各按鈕能實現(xiàn)相應(yīng)的功能。雙擊進(jìn)入代碼編輯界面并添加如下的語句,意思是將選項的指向移動到第一位。Me.TBookOrderBindingSource.MoveFirst()回到窗體界面,雙擊進(jìn)入代碼編輯界面并添加如下的語句,意思是將選項的指向向前移動一位。輸入如下的代碼:Me.TBookOrderBindingSource.MovePrevious()回到窗體界面,雙擊進(jìn)入代碼編輯界面并添加如下的語句,意思是將選項的指向向后移動一位。輸入如下的代碼:Me.TBookOrderBindingSource.MoveNext()
17、回到窗體界面,雙擊進(jìn)入代碼編輯界面并添加如下的語句,意思是將選項的指向移動到末尾。輸入如下的代碼:Me.TBookOrderBindingSource.MoveLast()啟動工程試一下。點(diǎn)擊,確實移向了下一位。點(diǎn)擊,移回第一位。點(diǎn)擊,移動到了末尾。點(diǎn)擊,移回第一位。再進(jìn)行TextBox中文本內(nèi)容的修改。選中一個文本框,在屬性欄中找到這一項。點(diǎn)擊加號展開。將Text修改為相應(yīng)的數(shù)據(jù),由于我第一個選擇的是教材編號,所以與BookCode綁定。同理,將剩下的文本框也與數(shù)據(jù)源綁定。 設(shè)定好之后再翻開程序查看,隨意點(diǎn)擊一項。文本框中顯示了相應(yīng)的文本。這之后是對五個按鈕的設(shè)定。添加如下的代碼以適用功能。
18、Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click 撤銷更新 Me.TBookOrderBindingSource.CancelEdit() End SubPrivate Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click 刪除教材 Me.TBookOrderBindingSource.RemoveCurrent() End SubPrivate Sub Button5_Click(sen
19、der As Object, e As EventArgs) Handles Button5.Click 訂購新教材 Me.TBookOrderBindingSource.AddNew() End SubPrivate Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click 確認(rèn)更新 Me.TBookOrderBindingSource.EndEdit() Try Me.T_BookOrderTableAdapter.Update(Me.BookDataSet.T_BookOrder) MsgBox(BookOrder更新成功) Catch a As Exception MsgBox(BookOrder更新失敗) End Try End SubPrivate Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click 退出系統(tǒng) End End Sub翻開程序試運(yùn)行。點(diǎn)擊訂購新教材,可以看到指向了新的一行并等待輸入。將正確
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑鋼材期貨鎖價采購綠色節(jié)能合同
- 汽車廣告創(chuàng)意設(shè)計及營銷合同
- 寵物糞便處理責(zé)任保證協(xié)議(住宅小區(qū))
- 游戲虛擬貨幣發(fā)行與內(nèi)容版權(quán)保護(hù)協(xié)議
- 高空作業(yè)安全盤扣式腳手架租賃一體化服務(wù)合同
- 夫妻間電子設(shè)備使用規(guī)范及忠誠度保障協(xié)議書
- Web前端開發(fā)課件 項目一 HTML文檔結(jié)構(gòu)
- DB42-T 2005.2-2023 就業(yè)創(chuàng)業(yè)服務(wù) 第2部分:創(chuàng)業(yè)擔(dān)保貸款網(wǎng)辦服務(wù)規(guī)范
- 教師心理健康學(xué)習(xí)心得體會模版
- 2023年人教版四年級語文上冊八單元測試卷及答案2
- 無錫惠山泥人課件
- 鎮(zhèn)海中學(xué)劍橋班入學(xué)測試卷
- 人教版八年級英語下冊第六單元教案
- 隱蔽工程(隨工檢查)驗收表
- GB∕T 32218-2015 真空技術(shù) 真空系統(tǒng)漏率測試方法
- 消防(控制室)值班記錄
- T∕CGMA 033001-2018 壓縮空氣站能效分級指南
- 工業(yè)管道的分類和分級
- 機(jī)器人任務(wù)規(guī)劃
- 楊家灣220KV變電站工程預(yù)算表
- 易拉罐回收機(jī)設(shè)計畢業(yè)設(shè)計
評論
0/150
提交評論