Hossis
شنبه 07 خرداد 1390, 18:29 عصر
من با استفاده از روش زیر به بانک اطلاعاتی وصل می شوم اما سرعت بارگزاری اطلاعات خیلی کند است و کاربر باید چند ثانیه ای صبر کند تا جستجو انجام شده و نتیجه آن برایش لیست شود.
البته دقت داشته باشید که حجم اطلاعات هم زیاد است و به عنوان مثال فایل بانک اطلاعاتی 35 تا 70 مگابایت می رسد.
به نظر شما راه سریعتری برای این کار هست؟؟
این هم کد مورد نظر
#Region "SQL Declaration"
Dim CnnStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\db.accdb"
Dim da As OleDbDataAdapter
Dim ds As New DataSet
Dim cnn As New OleDbConnection(CnnStr)
Dim ra As Integer
Dim DG As New DataGridView With {.parent = Me, .visible = False}
end region
#Region "SQL Codes"
''' <summary>
Private Sub Search(ByVal table As String, ByVal Fields As String, ByVal where As String)
Dim cnn As OleDbConnection
cnn = New OleDbConnection(CnnStr)
cnn.Open()
Da = New OleDbDataAdapter("Select " & Fields & " from " & table & " Where " & where, cnn)
DS.Clear()
Da.Fill(DS, table)
DG.DataSource = DS.Tables(table)
cnn.Close()
'For Each R As DataGridViewRow In DG.Rows
' If R.Cells(0).Value = Nothing Then Exit For
' txId.Text = R.Cells(0).Value
' tx1.Text = R.Cells(1).Value
' tx2.Text = R.Cells(2).Value
' tx3.Text = R.Cells(3).Value
' '...
'Next
End Sub
#End Region
البته دقت داشته باشید که حجم اطلاعات هم زیاد است و به عنوان مثال فایل بانک اطلاعاتی 35 تا 70 مگابایت می رسد.
به نظر شما راه سریعتری برای این کار هست؟؟
این هم کد مورد نظر
#Region "SQL Declaration"
Dim CnnStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\db.accdb"
Dim da As OleDbDataAdapter
Dim ds As New DataSet
Dim cnn As New OleDbConnection(CnnStr)
Dim ra As Integer
Dim DG As New DataGridView With {.parent = Me, .visible = False}
end region
#Region "SQL Codes"
''' <summary>
Private Sub Search(ByVal table As String, ByVal Fields As String, ByVal where As String)
Dim cnn As OleDbConnection
cnn = New OleDbConnection(CnnStr)
cnn.Open()
Da = New OleDbDataAdapter("Select " & Fields & " from " & table & " Where " & where, cnn)
DS.Clear()
Da.Fill(DS, table)
DG.DataSource = DS.Tables(table)
cnn.Close()
'For Each R As DataGridViewRow In DG.Rows
' If R.Cells(0).Value = Nothing Then Exit For
' txId.Text = R.Cells(0).Value
' tx1.Text = R.Cells(1).Value
' tx2.Text = R.Cells(2).Value
' tx3.Text = R.Cells(3).Value
' '...
'Next
End Sub
#End Region