質問 |
||
| QNo.4017907 | SQL server2005で OLE DB接続できない。Native Clientのみ? | |
|---|---|---|
| 質問者:aquleaf |
ご存知の方、いらしたら教えていただければと思います。 現在は、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 を選択すると接続タブ完結できず、つまり接続できない。 |
|
困り度:
|
||
| 質問投稿日時: 08/05/12 23:09 |
||
回答 |
|
| ANo.1 | 接続文字列はどうなっていますか?接続先がサーバ名のみ(サーバ名\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」でちゃんと繋げてます。言語は違いますが接続の可否は参考になるでしょう。 |
|---|---|
| 回答者:shimix | |
| 種類:アドバイス どんな人:経験者 自信:参考意見 |
|
| 回答日時: 08/05/13 10:01 |
|
| |
| この回答への補足 | どうもありがとうございます。 確かに接続先をサーバー名だけにしています。そこでご指摘のように以降を加えてみましたが、やはりダメでした。 --- ODBC接続はできます。 Delphiは無いので確認できませんが、非ODBC接続である例えば次のような操作が完結しません。 http://www.atmarkit.co.jp/fwin2k/win2ktips/404accessmsde/accessmsde... 上から順に操作していきますと、3.のデータベースの選択でエラーを返されてしまいます。 --- 何か思いつくところがあればご指摘頂ければと思います。 |
| この回答へのお礼 | どうもありがとうございました。 やはり回答者様の接続サーバーに関するコメントが正しかったようです。 できるようになりました。(実際の理由はわからないが、今頃になってできるようになった。今となってはスペルを間違えていたとしか考えられない。) |