同一PC内にないDBへのADO.NETのアクセス

解決


ディンギー  2005-11-30 17:38:18  No: 128448

VisualBasic.Netによる入門データベースプログラミングとかで勉強中ですが、例題はすべて同一PC内にデータベースがある場合のみでした。ADOでTCP接続は
http://homepage2.nifty.com/inform/vbdb/ado_msde_tcpip.htm
でいいのかなぁと思っていますが、ADO.NETでも同様にできますか?
共有ファイルを作っておけばデータリンクプロパティを設定するとき、参照できそうな気もしますが、TCPで他のPC上のDBに接続したい場合はどうするのでしょうか?


特攻隊長まるるう  2005-12-05 11:45:18  No: 128449

質問内容が曖昧です。
質問内のリンク先に書いてありますが、
>Windows NT などがサーバに使用されていて名前解決システムが存在する場合はこの方法は必要ありません。
に対して IP の指定が必要な状況なのでしょうか?

通常は ConnectionString にサーバ名を指定してアクセスできると思いますが、
その方法はヘルプに載ってます。
対象のデータベースに依存しますので、使用するデータベースも明示して下さい。
SQL Server なら
http://www.microsoft.com/japan/msdn/library/ja/cpref/html/frlrfSystemDataSqlClientSqlConnectionClassConnectionStringTopic.asp
とか。
Network Address の指定も有効のようですが、IP を指定しないと繋がらない
環境では他にも設定が必要な場合があります。質問文からそこまで突っ込んだ
問題ではないと判断し割愛します。


ディンギー  2005-12-05 16:10:54  No: 128450

お返事ありがとうございます。
本にあるのはACCESSに接続する例があり、私の質問はDNS serverを組んでいない固定IPでお互いを識別するPC同士の接続(例えば、机にあるノートブックから机の下のデスクトップのACCESSに接続)するにはどうしたらいいのかなぁという疑問です。
教えていただいたのから類推すると192.168.1.2のACCESSに接続したかったら、
Dim nwindConn As OleDbConnection = New OleDbConnection  _("Proveider=...;Data Source=192.168.1.2;"/ ...
で、いいのでしょうか??それともData source=の変わりにNetwork Address=
とすればいいのでしょうか?


特攻隊長まるるう  2005-12-05 18:53:17  No: 128451

Access ですかぁ(^^;)。とりあえず
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\192.168.1.2\c:\Test.mdb;"
で。


ディンギー  2005-12-05 20:28:30  No: 128452

特攻隊長まるるうさん、お返事ありがとうございました。
すみません、何せ初心者で本で勉強中の身ですから...

>とりあえず  ...で

ありがとうございました。明日、時間をみつけて試してみます。
何かありましたら、またよろしくお願いします。


※作成する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。







   このエントリーをはてなブックマークに追加