• 締切済み

SQL Serverへの接続について

すみませんが、どなたか教えてください。 Access2000のプロジェクトからADOを使って、OLE-DB経由でSQL Serverに接続しようとしています。 SQLステートメントを指定して、レコードセットを作成したいのですが、 以下のSQL分のテーブル名のSYARMに対して、オブジェクト名SYARMは無効ですというメッセージが出てきます。どこが問題になっているのでしょうか? Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset cn.Open "Provider=SQLOLEDB;" & "datasource=(local);" & "Integrated Security=SSPI;" rs.Open "SELECT * FROM SYARM WHERE KANNO=12345;", cn, adOpenKeyset, adLockOptimistic rs.Close cn.Close Set rs = Nothing Set cn = Nothing

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

参照設定でMicrosoftActiveX Data Objects 2.1 Libraryに参照していますでしょうか? Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset cn.Open "Provider=SQLOLEDB;" & "Data Source=(local);" & "Initial Catalog=pubs;","sa","" rs.Open "SELECT * FROM SYARM", cn, adOpenKeyset, adLockOptimistic ではダメですか?

saru38
質問者

補足

参照設定ではMicrosoftActiveX Data Objects 2.7 Libraryに参照していましたので、参照設定をMicrosoftActiveX Data Objects 2.1 Libraryにしました。バージョンが新しい方がいいというのを読んだことがあったのでそのようにしたのですが、2.7ではなく2.1の方がいいのでしょうか? あと、windows認証を行っているのを書き忘れました。それを行っている関係上、以上のように参照設定を2.1の方に設定して cn.Open "Provider=SQLOLEDB;" & "DataSource=(local);" & "Integrated Security=SSPI;" としたのですが、やはり同じエラーが出ました。

関連するQ&A