下面是我的程序,总是提示“对象变量或WITH块变量未设置”
加上:Set cnn = New adodb.Connection
Set rs = New adodb.Recordset
这两句也是不行!!!!!!!!!!! Dim db As Database
'Dim cnn As Connection
Dim qd As QueryDef
Dim rs As Recordset Sub show_data()
For i = 0 To 4
Text(i).Text = rs.Fields
Next
End Sub Private Sub Command1_Click(Index As Integer)
Select Case Index
Case 0
rs.MoveFirst //////错误提示指这一行:MoveFirst
show_data
Case 1
rs.MovePrevious
If rs.BOF Then rs.MoveFirst
show_data
Case 2
rs.MoveNext
If rs.EOF Then rs.MoveLast
show_data
Case 3
rs.MoveLast
show_data
Case 4
End
Set Form1 = Nothing
End Select End Sub
Private Sub Form1_Activate()
Dim sql_str As String
On Error GoTo errorexit
sql_str = "ODBC;UID=saWD=12345;DSN=订单管理DSN"
Set db = OpenDatabase("authors", dbDriverNoPrompt, False, sql_str)
Set qd = db.CreateQueryDef("")
qd.SQL = "select * from authors"
Set rs = qd.OpenRecordset()
show_data
Exit Sub
errorexit:
msgbos "无法连接数据库" End Sub
加上:Set cnn = New adodb.Connection
Set rs = New adodb.Recordset
这两句也是不行!!!!!!!!!!! Dim db As Database
'Dim cnn As Connection
Dim qd As QueryDef
Dim rs As Recordset Sub show_data()
For i = 0 To 4
Text(i).Text = rs.Fields
Next
End Sub Private Sub Command1_Click(Index As Integer)
Select Case Index
Case 0
rs.MoveFirst //////错误提示指这一行:MoveFirst
show_data
Case 1
rs.MovePrevious
If rs.BOF Then rs.MoveFirst
show_data
Case 2
rs.MoveNext
If rs.EOF Then rs.MoveLast
show_data
Case 3
rs.MoveLast
show_data
Case 4
End
Set Form1 = Nothing
End Select End Sub
Private Sub Form1_Activate()
Dim sql_str As String
On Error GoTo errorexit
sql_str = "ODBC;UID=saWD=12345;DSN=订单管理DSN"
Set db = OpenDatabase("authors", dbDriverNoPrompt, False, sql_str)
Set qd = db.CreateQueryDef("")
qd.SQL = "select * from authors"
Set rs = qd.OpenRecordset()
show_data
Exit Sub
errorexit:
msgbos "无法连接数据库" End Sub
解决方案 »
- 请教一个对象变量的定义方法?
- 如何从一个自定义控件窗口取到内容?
- 我用 VB 打开一个文件, 如果这个文件正好被别的程序独占访问 就会出错, 怎么捕获这个错误!
- 使用DataGrid时出现from子句语法错误。
- 如何能将字符串类型的控件名转换成控件对象,调用属性?
- 如何设置FlexGrid指定行的背景?
- 如何避免出现:"当系统后台繁忙时,按任意键会弹出"this action cannot be completed because the other application is busy……“的英文
- 想问一下VB 6.0 中的锁定控件(我没分了)
- 我是一VB新手,请大家帮帮我!谢谢
- 怎样用VB编写DLL函数,并能用Declare声明再使用?拜托!
- 请教一个VB写库的问题。请大家帮忙看看,先谢谢了……
- winsock下载进度显示错误的问题
方法二 添加一个ADO控件,可以把他设置成隐藏 visable=false
cnn.open "数据库"
rs.open "表"
如果你还是不能搞定
就EMAIL 我,我帮你改好了 在发给你
[email protected]
楼主的程序是用DAO,但他(她)却引用ADODB.
应该引用Microsoft DAO 3.51 Object Library 或 DAO 3.6 Object Library。
如果引用DAO 3.6,最好加关键字DAO.
例如:Dim mDB As DAO.Database
Dim oRS As DAO.Recordset
Set oRS = mDB.OpenRecordset("select version from FinanceDBVersion") 'DAO code
'rs.fieldname (Access97) which had to be replaced with rs!fieldname. Or rs.Fields("fieldname") for in Access2000楼主要多多学习!Good Luck!
Dim rs As DAO.Recordset Private Sub Form1_Load()
Dim sql_str As String
On Error GoTo errorexit
sql_str = "ODBC;UID=saWD=12345;DSN=订单管理DSN "
Set db = OpenDatabase( "authors", dbDriverNoPrompt, False, sql_str)
Set rs = db.OpenRecordset("select * from authors")
show_data
Exit Sub
errorexit:
msgbos "无法连接数据库 "
End SubSub show_data()
For i = 0 To 4
Text(i).Text = rs.Fields(i)
Next
End Sub Private Sub Command1_Click(Index As Integer)
Select Case Index
Case 0
rs.MoveFirst //////错误提示指这一行:MoveFirst
show_data
Case 1
rs.MovePrevious
If rs.BOF Then rs.MoveFirst
show_data
Case 2
rs.MoveNext
If rs.EOF Then rs.MoveLast
show_data
Case 3
rs.MoveLast
show_data
Case 4
End
Set Form1 = Nothing
End Select End Sub