質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

Q&A

3回答

11591閲覧

C# oracleにopen()メソッドでエラー

color

総合スコア90

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

0グッド

0クリップ

投稿2017/05/24 07:45

c#でoracleに接続出来なくて困っております。

idやpassは問題なさそうです。
理由としてはSqlplusでは問題なく接続が可能となっています。

つまずく箇所はopen()メソッドです。

tryでエラーをキャッチしてlogに出力しましたが、
から文字となり、とっかかりがありませんでした。

サーバやoracleの設定の様な気がしてます。
思いつく事、ご指摘頂ければ幸いで御座います。

c#

1 OracleConnection con = new OracleConnection(); 2 3 con.ConnectionString = "User Id=****; Password=****; Data Source=10.*.*.*/***"; 4 Logger.LogInfo("1"); 5 // 接続します。 6 con.Open(); 7 Logger.LogInfo("2"); 8 // 接続を解除します。 9 con.Close(); 10 Logger.LogInfo("3");

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

こんにちは。
例外のメッセージを見ればだいたいわかるはずですが、空文字とは…

接続文字列については何名の方からかご指摘がありましたので、環境の話を可能性として。
アプリケーションはWindowsクライアントアプリケーションでしょうか。

Oracleクライアント、作成しているクライアントアプリケーション、実行オペレーティングシステムの32bit, 64bit は正しいでしょうか。

投稿2017/05/24 14:05

Tak1wa

総合スコア4791

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

接続文字列

リモートで接続するには、ユーザー名とパスワードだけではなく、完全なOracle Net接続文字列を指定する必要があります。接続文字列には、データベース・ユーザー名とパスワードに加えて、ホスト名またはホストIPアドレス、オプションのTCPポート番号、およびオプションのデータベース・サービス名が含まれます。これらの追加パラメータは、Oracle Netが正しいホスト・コンピュータを探してOracle Database XEに接続するために必要です。Oracle Net接続文字列の形式は次のとおりです。

username/password@[//]host[:port][/service_name]
パラメータの内容は次のとおりです。

//はオプションです

hostは、Oracle Database XEが実行されているコンピュータのホスト名またはIPアドレスです

port (オプション)は、Oracle NetリスナーがリスニングするTCPポート番号です。指定しない場合は、デフォルトのポート番号1521が使用されます。

service_name (オプション)は、接続先のデータベース・サービスの名前です。Oracle Database XEのサービス名はXEです。service_nameを省略した場合は、Oracle Database XE Clientによって、デフォルトのデータベース・サービス(インストール時にXEとして構成されます)に対するリクエストが追加されます。

User Id=****; <ここから間違ってませんか?

username/password@[//]host[:port][/service_name]

投稿2017/05/24 09:30

107User

総合スコア78

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

接続文字列は正しいですか?

Oracle Data Provider for .NET開発者ガイド

ConnectionString

このプロパティは、Oracleデータベースへの接続に使用される接続情報を指定します。
例外
ArgumentException: 無効な構文が接続文字列に指定されました。
InvalidOperationException: ConnectionStringが接続がオープン中に設定されました。
備考
ConnectionStringの形式が正しくない場合、例外がスローされます。

投稿2017/05/24 08:14

dojikko

総合スコア3939

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問