我正在将旧应用程序转换为使用 SQL Compact 数据库(它适用于 SQ Server 2005 和 2008),并且在尝试执行简单的选择命令时使用以下代码会出错:
Private Const mSqlProvider As String = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;"
Private Const mSqlHost As String = "Data Source=C:\database.sdf;"
Private mCmd As ADODB.Command ' For executing SQL'
Private mDbConnection As ADODB.Connection
Private Sub Command1_Click()
Dim DbConnectionString As String
DbConnectionString = mSqlProvider & _
mSqlHost
Set mDbConnection = New ADODB.Connection
mDbConnection.CursorLocation = adUseClient
Call mDbConnection.Open(DbConnectionString)
If mDbConnection.State = adStateOpen Then
Debug.Print (" Database is open")
' Initialise the command object'
Set mCmd = New ADODB.Command
mCmd.ActiveConnection = mDbConnection
End If
mCmd.CommandText = "select * from myTable"
mCmd.CommandType = adCmdText
mCmd.Execute ' FAILS HERE! '
End Sub
我在项目中引用了 Microsoft ActiveX 数据访问对象 6.0 库。
我得到的错误是:
运行时错误 -2147217887 (80040e21)
多步操作产生错误。检查每个状态值
只是想知道是否有人有任何建议?
谢谢