Многоэтапная ошибка OLEDB для соединения SQLSERVER.CE.OLEDB.3.5 - PullRequest
0 голосов
/ 30 июня 2011

Я пытаюсь подключиться к .sdf-файлу SQL Server Compact Edition со следующей строкой подключения;

connMRC.ConnectionString = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=" & App.Path & "\Freeweigh.sdf;"

Я получаю следующую ошибку каждый раз, когда пытаюсь выполнить команду SQL или открыть набор записей:

Многошаговые ошибки, генерируемые OLE DB. Проверьте каждое значение состояния OLE DB, если оно доступно. Никакой работы не было сделано.

Я использую VB 6.0 и SQL Server Compact 3.5 SP2

Вот код:

Public Sub opnConnectionC()
'Code for opening the ADO Connection
chkConn = connMRC.State
If chkConn = adStateClosed Then
    connMRC.ConnectionString = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=" & App.Path & "\Freeweigh.sdf;"
    connMRC.Open
End If
End Sub


Public Sub opnRecordsetC(rsOpen As Recordset)
'Code for opening the ADO Recordset
chkRs = rsOpen.State
If chkRs = adStateClosed Then
    rsOpen.Source = strSQLC
    rsOpen.CursorType = adOpenDynamic
    rsOpen.LockType = adLockOptimistic
    rsOpen.ActiveConnection = connMRC
    rsOpen.Open
End If
End Sub


Private Sub tmrUpload_Timer()
Dim cmdUpload As New ADODB.Command
Dim rsFetch As New ADODB.Recordset

Call opnConnectionC

strSQLC = "SELECT Product FROM VehicleWeights"
Call opnRecordsetC(rsFetch)
rsFetch.MoveFirst
MsgBox (rsFetch.Fields("Product").Value)

Call clsConnectionC
End Sub

1 Ответ

0 голосов
/ 30 июня 2011

Вы можете открыть только форвард, только для чтения.

...