真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ADO.NET異步查詢是什么

本篇內(nèi)容介紹了“ADO.NET異步查詢是什么”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新互聯(lián)不只是一家網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司;我們對(duì)營(yíng)銷、技術(shù)、服務(wù)都有自己獨(dú)特見(jiàn)解,公司采取“創(chuàng)意+綜合+營(yíng)銷”一體化的方式為您提供更專業(yè)的服務(wù)!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關(guān)注我們的成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站質(zhì)量和服務(wù)品質(zhì),在得到用戶滿意的同時(shí),也能得到同行業(yè)的專業(yè)認(rèn)可,能夠?yàn)樾袠I(yè)創(chuàng)新發(fā)展助力。未來(lái)將繼續(xù)專注于技術(shù)創(chuàng)新,服務(wù)升級(jí),滿足企業(yè)一站式全網(wǎng)營(yíng)銷推廣需求,讓再小的品牌網(wǎng)站設(shè)計(jì)也能產(chǎn)生價(jià)值!

ADO.NET數(shù)據(jù)庫(kù)提供程序包含Connection、Command、DataAdapter和DataReader對(duì)象。在一般的ADO.NET編程中,首先要?jiǎng)?chuàng)建Connection對(duì)象,給它提供需要的信息,例如連接字符串。然后創(chuàng)建一個(gè)Command對(duì)象,給它提供要執(zhí)行的SQL命令的細(xì)節(jié)。這個(gè)命令可以是內(nèi)置的SQL文本命令、存儲(chǔ)過(guò)程或?qū)Ρ淼闹苯釉L問(wèn)。如果需要,還可以為這些命令提供參數(shù)。

在創(chuàng)建Connection和Command對(duì)象后,就必須確定命令是否返回結(jié)果集。如果命令不返回結(jié)果集,就可以通過(guò)調(diào)用幾個(gè)Execute方法之一,執(zhí)行命令。另一方面,如果命令返回結(jié)果集,就必須確定是否要保留結(jié)果集,以備將來(lái)在不維持與數(shù)據(jù)庫(kù)的連接的情況下使用。如果要保留結(jié)果集,就必須創(chuàng)建一個(gè)DataAdapter對(duì)象,用它填充DataSet或DataTable對(duì)象。這些對(duì)象可以在斷開(kāi)連接的模式下維護(hù)其中的信息。但是,如果不想保留結(jié)果集,只是要以快速方式執(zhí)行命令,就可以使用Command對(duì)象創(chuàng)建DataReader對(duì)象。DataReader對(duì)象需要與數(shù)據(jù)庫(kù)的實(shí)時(shí)連接,它是一個(gè)只向前的只讀光標(biāo)。下面我們來(lái)看一個(gè)關(guān)于使用ADO.NET異步查詢的案例。

使用ADO.NET異步查詢,并將查詢結(jié)果呈現(xiàn)在指定的Form的DataGridView中

Public Class Asynchronous  Private Delegate Sub MainInvoke(ByVal TableItems() As String, ByVal RowCount As Integer) '委托  Delegate Sub AsyncMethodCaller()  Public connstr As String  Public cmdstr As String  Public frm As Form ' 指定的form  Public dgv As DataGridView ' 指定的datagridview  Public statuscontrol As Control ' 顯示狀態(tài)的控件  Public message As String'狀態(tài)提示文本   Private Sub CallbackHandler()  Using conn As New SqlConnection(connstr), cmd As New SqlCommand(cmdstr, conn)  conn.Open()  Using reader As SqlDataReader = cmd.ExecuteReader  Dim i As Integer  Dim items(dgv.Columns.Count - 1) As String  While reader.Read()  For j As Int32 = 0 To dgv.Columns.Count - 1  items(j) = reader(dgv.Columns(j).HeaderText)  Next  frm.Invoke(New MainInvoke(AddressOf Addrows), items, i)  i += 1  End While  End Using  conn.Close()  End Using  End Sub   Public Sub getdatabase()  Dim caller As New AsyncMethodCaller(AddressOf CallbackHandler)  Dim result As IAsyncResult = caller.BeginInvoke(AddressOf StopRead, caller)  End Sub   Private Sub Addrows(ByVal TableItems() As String, ByVal row As Integer) '添加新行,并顯示處理進(jìn)度  dgv.Rows.Add()  For i As Int32 = 0 To TableItems.Length - 1  dgv.Rows(row).Cells(i).Value = TableItems(i)  Next  If statuscontrol IsNot Nothing Then statuscontrol.Text = message & row  End Sub   Private Sub StopRead(ByVal ar As IAsyncResult)  Dim caller As AsyncMethodCaller = CType(ar.AsyncState, AsyncMethodCaller)  caller.EndInvoke(ar)  End Sub  End Class

ADO.NET異步查詢使用方法:

DataG.Columns.Add("編號(hào)", "編號(hào)")  DataG.Columns.Add("時(shí)間", "時(shí)間")  DataG.Columns.Add("用戶名", "用戶名")   Dim newselect As New Asynchronous  newselect.connstr = "SERVER=x;DATABASE=x;USER=x;PASSWORD=x;Asynchronous Processing=true" newselect.cmdstr = "select * from log" newselect.frm = Me newselect.dgv = DataG newselect.statuscontrol = Me newselect.message = "數(shù)據(jù)檢索中..." newselect.getdatabase()

“ADO.NET異步查詢是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


本文題目:ADO.NET異步查詢是什么
文章出自:http://weahome.cn/article/jsjeec.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部