Dim conn As Connection
Dim rs As Recordset
Set conn = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
Dim SQL As String
SQL = "select tName,tPhone,tSum,tDate from t_basic where tInvoice = '" & sInvoice.Text & "'"conn.Open "provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mdbPath & ";Persist Security Info=False;Jet OLEDB:Database Password=abc123"
rs.Open SQL, conn, 1, 1, 1
Set DataGrid1.DataSource = rs
DataGrid1.ClearFields
DataGrid1.ReBind
运行结果出现"不能初始化数据绑定"这是怎么回事?
网上查了下大多是说几个组件注册一下,我全部注册过了还是没用还有个问题
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
这个应该是不能加在后面的吧?否则会使DataGrid1内的数据失效
那程序关闭是rs和conn会自动关闭吗?
Dim rs As Recordset
Set conn = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
Dim SQL As String
SQL = "select tName,tPhone,tSum,tDate from t_basic where tInvoice = '" & sInvoice.Text & "'"conn.Open "provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mdbPath & ";Persist Security Info=False;Jet OLEDB:Database Password=abc123"
rs.Open SQL, conn, 1, 1, 1
Set DataGrid1.DataSource = rs
DataGrid1.ClearFields
DataGrid1.ReBind
运行结果出现"不能初始化数据绑定"这是怎么回事?
网上查了下大多是说几个组件注册一下,我全部注册过了还是没用还有个问题
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
这个应该是不能加在后面的吧?否则会使DataGrid1内的数据失效
那程序关闭是rs和conn会自动关闭吗?
conn.CursorLocation = adUseClient
试试
DataGrid1.ClearFields
DataGrid1.ReBindrs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
这个应该是不能加在后面的,否则会使DataGrid1内的数据失效
程序关闭是rs和conn会自动关闭
如果这些代码是放在一个Button1_Click的事件中
然后我不关闭程序直接再按一下Button1进行另一次sql查询的话,原来的rs和conn会怎么样?
可以把
Dim conn As Connection
Dim rs As Recordset
Set conn = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")改成:Dim conn As New Adodb.Connection
Dim rs As New Adodb.Recordset就不会出错
Set rs = Nothing
conn.Close
Set conn = Nothing语句加上后,确实使DataGrid1内的数据失效,请教是否有办法关掉,然后允许我多次连续查询啊?谢谢