在VB
在
ADO是大家在数据库编程中用得较多的
而在新的中
虽然也可以用它来查询数据库
但在与新的datagrid的绑定中
不能像以前那样使用
datagrid
datasoure=rs
而是需要一定的转化
因为新的datagrid
datasoure所对应的是 datatable或dataset
而并不是原来的Recordset
所以
在使用中
要把Recordset转换成datatable或 dataset
我们以datatable为例
Function RecordsetToDataTable(ByVal adoRS As ADODBRecordset ByVal strTable As String)
adoRSMoveFirst()
Dim dt As DataTable
dt = New DataTable(strTable)
Dim i As Integer
Dim strcolname As String
Dim t As Type
Dim dr As DataRow
For i = To adoRSFieldsCount
strcolname = adoRSFields(i)Name
t = adoRSFields(i)ValueGetType()
dtColumnsAdd(strcolname t)
Next
While (Not adoRSEOF)
dr = dtNewRow()
For i = To adoRSFieldsCount
dr(i) = adoRSFields(i)Value
Next
dtRowsAdd(dr)
adoRSMoveNext()
End While
Return dt
End Function
以上函数是实现将Recordset转换成DataTable
而我们要做的就是在窗口的load中加入对ADO中的转化后再进行引用
Dim dts As DataTable
dts = RecordsetToDataTable(rsuser login) 其中rsuser为adoRecordsetlogin为表名
DataGridDataSource = dtsDefaultView