- 締切済み
SQL server2005で OLE DB接続できない。Native Clientのみ?
ご存知の方、いらしたら教えていただければと思います。 現在は、S/C型の利用においてDBにAccess2000を使っていますが、様々なところで述べられている危険性に配慮して、SQLserverへの移行をしようとしています。 ちなみにSへはテーブルを配置し、CではExcelからADO/Jet OLE DBを経由して接続しています。 ユーザーにはフロントであるExcelを配布して利用しています。 さて本件ですが、SQLServerに移行しようと考えて、サーバにはExpress editionと接続コンポーネントを、クライアントには接続コンポーネントをインストールしたのですが、勝手が違うのでよくわからないです。 いろいろ試した挙句、ODBCからNative Clientとして接続すると可能であるところまでもってきましたが、もう一歩先に進めないで困っています。 つまり、目指すところは、ADO/OLE DB for SQL server を経由した接続です・・・ODBC経由だと、全てのクライアントに接続コンポーネントをインストールして回らなくてはならないので、大変です。 なにか考え方に誤りがあるのでしょうか、あるいはどこか注意すべきところがあるのでしょうか?よろしくお願いします。 ---以下、操作例--- メモ帳の拡張子をudlに変更してデータリンクファイルを作成。 これを開き、プロバイダータブにおいて MS OLE DB Provider for ODBC Driver を選択し、接続タブではサーバー名などを入力して接続テストすると可能である。 他方、プロバイダーにMS OLE DB Provider for SQL server を選択すると接続タブ完結できず、つまり接続できない。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- shimix
- ベストアンサー率54% (865/1590)
接続文字列はどうなっていますか?接続先がサーバ名のみ(サーバ名\SQLEXPRESSになっていない)ということではないですよね? ウチの環境だと・・ Access2002からはODBCのドライバで「SQL Native Client」でも「SQL Server」でも繋がってます。DelphiのADOコンポーネントからは「SQL Native Cliebnt」でも「Microsoft OLE DB Provider for SQL Server」でも接続可です。 (蛇足ですが)後者で「Microsoft OLE DB Provider for ODBC Drivers」では繋いだとこがありません。が、試したところODBCのデータソース定義を指定してちゃんと繋がりました。 ということで「Microsoft OLE DB Provider for SQL Server」でちゃんと繋げてます。言語は違いますが接続の可否は参考になるでしょう。
お礼
どうもありがとうございました。 やはり回答者様の接続サーバーに関するコメントが正しかったようです。 できるようになりました。(実際の理由はわからないが、今頃になってできるようになった。今となってはスペルを間違えていたとしか考えられない。)
補足
どうもありがとうございます。 確かに接続先をサーバー名だけにしています。そこでご指摘のように以降を加えてみましたが、やはりダメでした。 --- ODBC接続はできます。 Delphiは無いので確認できませんが、非ODBC接続である例えば次のような操作が完結しません。 http://www.atmarkit.co.jp/fwin2k/win2ktips/404accessmsde/accessmsde.html 上から順に操作していきますと、3.のデータベースの選択でエラーを返されてしまいます。 --- 何か思いつくところがあればご指摘頂ければと思います。