OleDbConnectでのデータベース接続の方法とは?

このQ&Aのポイント
  • C#初心者のために、OleDbConnectionを使用して共有サーバーにインストールされたオラクルデータベース10gにオンライン上の別のPCから接続する方法を教えてください。
  • OleDbConnectionを使用してデータベースに接続するには、サーバーのIPアドレス、オラクルのユーザ名、パスワード、データソース名、データベース名、タイムアウト値などを指定する必要があります。
  • インストールされていないPCからOleDbConnectionを使用してデータベースに接続する方法について、調査を行いましたが情報がほとんど得られませんでした。接続方法を知っている方がいらっしゃいましたら、教えていただけますか?
回答を見る
  • ベストアンサー

OleDbConnectでのデータベース接続

開発言語VC#2008 OS:WindowsXP C#初心者です。 共有サーバーにインストールしたオラクルデータベース10gに オンライン上の別のPCから接続をしたいのです。 なお、このPCにはオラクルはインストールできません。 OleDbConnectionを使用して接続をするにはどのようにすればよいでしょうか? サーバーのIPアドレス、オラクルのユーザ名(ID?)、パスワード、データソース名、データベース名、タイムアウト値などを指定して接続をしたいのですが、分からないです。 いろいろ調べてはみたのですがほとんど情報は得られませんでした。 もし、接続方法をご存知の方がおられたらご教授願えないでしょうか? 宜しくお願いします。

  • INDES
  • お礼率37% (10/27)

質問者が選んだベストアンサー

  • ベストアンサー
  • marutone
  • ベストアンサー率40% (70/174)
回答No.2

Oracle Clientをインストールしたくないのであれば、 METAFRAME等を使用してC#のexeをサーバー側で管理するか、 データソースの設定でODBCでオラクルに接続するようにして、 OdbcConnectionを使用して接続するくらいですかね。 ASP.NETにしてしまうという手もあります。

参考URL:
http://msdn.microsoft.com/ja-jp/library/system.data.odbc.odbcconnection(v=vs.80).aspx
INDES
質問者

お礼

Instant ClientをクライアントPCに入れ、環境変数を追加することで使用できるようになりました。 有難う御座いました。

INDES
質問者

補足

回答有難う御座います。 諸事情により、OleDBでの接続をする必要があって、その他の接続方法は選択できません。 現在、接続試験用にサーバーにOracle Express Editionをインストールしています。 開発用のPC(クライアントPC)にてプログラムを構築していますが、 OleDBConnectionで接続文字列のProviuderにMSDAORAを指定してOpenしようとすると、 「Oracleクライアントとネットワークコンポーネントが見つかりません。~プロバイダーは、これらのコンポーネントがインストールされるまで機能しません。」 と表示されてしまいます。 Oracleのホームページで、「Instant Client」というものがありますが、これだけをインストールすればいいのでしょうか? それとも、「Oracle Developer Tools for Visual Studio」もインストールする必要があるのでしょうか? またアプリケーションを配布するときにも以上のファイルが必要になるのでしょうか?

その他の回答 (1)

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

クライアントPCにオラクルクライアントをインストールせずに接続したいということなら無理だと思います。

INDES
質問者

お礼

素早い回答有難う御座いました。 なんとか、クライアントPCにはインストールせずに接続したいのです。 ConnectStringのProviderをMSDAORAにしても接続できないのでしょうか?

関連するQ&A

  • VB.neからデータベースへの接続

    ログインシステムを作りたいのですが、 (ID PASSの登録は済ませていることを前提として) 登録情報をHSQLDB MYSQLなどを使いサーバで動かしていて、 クライアント(別PC)言語VB.net限定より、データベースに接続し、認証したいのですが、そのアドバイスをいただきたいです。よろしくお願いします。データベースにAccsessはなしです。Oracleも無理です..。

  • オラクルデータベースの接続

    オラクル初心者です。 ご存知の方、ご教示頂ければ幸いです。 64bitのWindows10に32bitオラクルクライアントをインストールした場合、64bitのオラクルデータベースにアクセス出来ますでしょうか? サーバー、クライアント共に12.2です。

  • データベースの起動について

    現在、サーバーAの1台が起動しoracleのデータベースを 運用しています  そこに、サーバーBを起動し、oracleのデータベースの 試験運用を実施したいです 質問(1)  各サーバーが下記設定の場合、 サーバーBを起動することにより、サーバーAにて起動して いる本来のデータベースに問題が発生するでしょうか? 質問(2)  発生する場合、どのように回避すればいいので しょうか? ご存知の方、ご教示の程宜しくお願いします サーバーA(本運用)  OS:windowsNT4.0  Oracle:Oracle8i(8.1.7)  グローバルデータベース名:seisandb  SID:seisandb  接続文字列:seisandb  コンピュータ名:test01  IPaddress:192.168.1.10 サーバーB(試験運用)  OS:windowsNT4.0  Oracle:Oracle8i(8.1.7)  グローバルデータベース名:seisandb  SID:seisandb  接続文字列:seisandb  コンピュータ名:test02       ←Aとの違い  IPaddress:192.168.1.11    ←Aとの違い

  • データベースの作成

    Oracleを勉強し始めました。 今まではWebアプリにAccessを使っていて、Oracleに移行したいと思います。 とりあえず、データベースを作成するのだと思ったのですが、 インストールを終えた状態で、orclというデータベースがすでに出来ていました。(インストールは、マシンを設置した部署の方がしました。) 今後は他の部署もこのOracleにデータを保存するという予定らしいです。Oracleのインストールしたサーバーには、リモート接続が可能で、 管理者権限のパスワードも教えてもらっています。 もし、私がアクセスの住所録というデータベースファイル(jyuushoroku.mdb)を移行したいとすると、jyuushoroku というデータベースを新たに作成するのですよね? データベースは複数にあっても構わないのですか?アクセスと違い、データベースを作成する時にとても大掛かりなのでとまどってしまいました。 インストール時に作成したorclというデータベースには、パスワードが 設定されていて、接続ができません。自分の作成したデータベースには、独自のパスワードを設定して、それを使って接続すればいいのですか?ほんとに初歩的な概念がわからずに申し訳ないです。 よろしくお願いします。

  • データベースに接続できない

    Oracle初心者です。 環境:9i 現在、とあるoracleデータベースに、object browserを使用してアクセスしようとしています。 が、接続できません。 SQL Plusで接続しようと思い、やってみると、 「ORA-12154: TNSサービス名を解決できませんでした」 とでてきました。 TNSサービス名とは何なのでしょうか? なぜ接続できないのでしょう? どなたかアドバイスをよろしくお願いいたします。

  • 他のローカルにあるデータベースに接続することは可能?

    Pc-1のローカルのSQLサーバーに置いてあるデータベースに Pc-2から接続することは可能ですか?(この2台はLANで接続されています) もし可能な場合、Pc-2にもSQLサーバーをインストールしなくてはダメですか? よろしくお願いします。

  • デフォルトで共有サーバ接続させるためには

    「tnsnames.ora」に「SERVER」を設定せずにデータベースに接続した場合に、共有サーバ接続(SHARED)にさせたいのですが、専用サーバ接続「DEDICATED」になってしまいます。 データベースの設定としては初期化パラメータに「DISPATCHERS="(PROTOCOL=tcp)(SERVICE=サービス名)」、「SHARED_SERVERS=5」を設定しています。 「tnsnames.ora」に「SERVER=SHARED」を設定すれば共有サーバ接続になります。 「SERVER」を設定せずに共有サーバ接続させる方法をお教えください。 OS : Windows2003 Server Oracle : Oracle9i 9.2.0.5 よろしくお願いします。

  • ApacheWebサーバがあるサーバから,別サーバにあるOracle8iデータベースに接続するには

    Webサーバ(ApacheWebサーバ)がインストールしてあるサーバとは別に, データベース(Oracle8i)がインストールしてあるサーバに接続したいのですが, とある文献に, ==================== Oracleの場合、データベースへの接続は「ocilogon関数」を利用します。 この関数 は、下記のように接続するデータベースとユーザーを指定します。 関数の返り値と して、接続IDが返されるので、そのIDを変数に受け取るようにしておきます。 ocilogon("ユーザー","パスワード","接続文字列"); // Oracleとの接続 $conn = OCILogon("scott", "tiger", "orcl"); ===================== という記述がありました. このような記述だけで,別サーバにあるOracle8iへ接続可能なのでしょうか? さらに, ===================== 「また、ここで「接続文字列」を指定することによって、  Webサーバとは別のサーバで稼働 しているデータベースへの接続も可能です。」 ===================== という記述もあります. 接続文字列(orcl)を入力しただけで,別サーバにあるデータベース に接続することは可能なのでしょうか?私が思うにはデータベースサーバの IPアドレスなどの情報がないと無理な気がするのですが,どうなのでしょうか? よろしくお願いします.

    • 締切済み
    • PHP
  • オラクルデータベースで、C言語は

    オラクルデータベースをインストールしたのですが、 C言語からアクセスするためのコンパイルの方法がわかりません。 ドキュメントを読みあさる限り、データベースに同包されていると書いているようなのですが。 win7、オラクルデータベース11gまたは12cです。 それとも違うデータベースの方がいいとかありますか?

  • 突然オラクルへ接続できなくなりました

    ローカルにオラクルをインストールして開発をしていました。 しばらく時間があいた後、開発を再開しようとするとDBへの 接続ができなくなっていました。 sqlplusではDB操作可能なので、DBそのものは落ちていないと 思うのですが… リスナーのステータスを確認すると(lsnrctl status SID)下記のエラーが出ます。 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MY-PC)(PORT=1521))(CONNECT_DATA=( SERVER=DEDICATED)(SERVICE_NAME=SID)))に接続中 TNS-12535: TNS: 操作はタイム・アウトしました。 TNS-12560: TNS: プロトコル・アダプタ・エラー TNS-00505: 操作タイムアウトです。 32-bit Windows Error: 60: Unknown error 何が問題でどうすればよいのかわからないのですが、何か対応策があれば教えてください。 DBを再構築することも考えたのですが、原因がわからなければ同じ事が起こる(起こす?) ような気がするので。 よろしくお願いします。

専門家に質問してみよう