ADOでローカルのMDBをコネクションで開いています。
そのコネクションで以下のSQL文でExecuteするとエラーが出ます。
「FROM句句の構文エラーです。」
adoCn.Execute "SELECT a.* FROM OPENROWSET('SQLOLEDB','servername';'sa';'password','SELECT * FROM dbname.dbo.tablename') AS a"
何か間違っているのでしょうか?
また、逆の場合はうまくいきました。
OPENROWSET はT-SQL(SQLServerのSQL文)の構文です。
>ADOでローカルのMDBをコネクションで開いています。
ということは、JetのOLEDBプロバイダでしょうから、
Jetで通用するSQL文を発行する必要があります。
その区別がついていないのが「間違い」ということに...
というのはさておき、
JetからSQLServerを見に行くようにすればいいわけですから、
MDB上にリンクテーブルを作成するか、または、
FROM [ODBC;driver={SQL Server};Server=サーバ名;UID=ユーザ;PWD=パスワード;database=DB名].テーブル名
のようにします。
ありがとうございます。
>Jetで通用するSQL文を発行する必要があります。
>その区別がついていないのが「間違い」ということに...
SQLについてもっと勉強します。
ツイート | ![]() |