csvファイルをインポートするために次のクエリを実行しています。
SELECT * FROM OPENROWSET('MSDASQL', 'Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=D:\Documents\;', 'SELECT * from file.csv') AS something
このエラーが発生します:
OLE DB provider "MSDASQL" for linked server "(null)" returned message "[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified".
Msg 7303, Level 16, State 1, Line 1
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "(null)".
これは私が問題を解決するために行ったことですが、どちらも十分ではありませんでした:
- MsSQLとIISは、問題のフォルダーとファイルにアクセスできます。また、どちらもSQLサーバーが実行されているネットワークサービスの一時フォルダーにアクセスできます。
- sp_configureを使用してアドホック分散クエリを有効にしました
- レジストリキーDisallowAdhocAccessを0に設定して修正しました
- Microsoft Access DatabaseEngine2010再頒布可能パッケージをインストールしました
システムはSQLServer2012Expressを実行しているWindows2008Serverですが、この問題はSQLServer2008でも再現されています。
この時点で、ランダムなアイデアを歓迎します:)。ありがとう!