1

上記のエラーメッセージの表示に問題があります。誰か助けてもらえますか?

Dim cn As New ADODB.Connection 
Dim cmd As New ADODB.Command 
Dim RS As New ADODB.Recordset 
Dim RS2 As New ADODB.Recordset

Set cn = New ADODB.Connection
Call cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & TheServer &   
          FileTypeOld & ";" & "Jet OLEDB:Database Password=12345678;")

If cn.State = 0 Then cn.Open
Set cmd.ActiveConnection = cn
cmd.CommandText = "SELECT * FROM mov"
cmd.CommandType = adCmdTable
Set RS = cmd.Execute
4

2 に答える 2

1

_この行の最後にアンダースコアが付いているこの文字を追加する必要があります

これに置き換えるだけです:

Call cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & TheServer & _
FileTypeOld & ";" & "Jet OLEDB:Database Password=12345678;")

または、このように、アンダースコアなしで両方の行を1つの行にマージできます

Call cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & TheServer & ileTypeOld & ";" & "Jet OLEDB:Database Password=12345678;")
于 2012-11-20T10:46:46.780 に答える
1

問題は、コマンドタイプのSQLステートメントを使用していることですadCmdTable。そのコマンドタイプを使用する場合、ADOは内部でselectクエリを生成します。この場合、テーブルの名前を指定するだけで済みます。

cmd.CommandType = adCmdTableまたは、行をすべて削除して、を保持しselect * syntaxます。

于 2012-11-20T12:52:55.867 に答える