2017-03-24 14 views
0

Oracleデータベースに接続するツールをC#で作成しようとしていますが、ODBCを使用する必要があります。odbcを使用してOracleデータベースに接続する#

私は次のコードを使用している場合:私は、接続文字列を変更した場合でも

An unhandled exception of type 'System.Data.Odbc.OdbcException' occurred in System.Data.dll 
Additional information: ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 

string str2 = "Driver={Oracle in OraClient12home1};DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=abcd.efgh.net)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=service_name)));USER ID=user_id;PASSWORD=qassword"; 

私は同じだ

using System.Data.Odbc; 
string str1 = "DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=abcd.efgh.net)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=service_name)));USER ID=user_id;PASSWORD=qassword"; 
OdbcConnection coon = new OdbcConnection(); 
coon.ConnectionString = str1; 
coon.Open(); 

を私はエラーメッセージが表示されましたエラーメッセージ。 問題は「ダイバー= {...}」の部分ではないと思いますか?しかし、「データソース」の部分でどこが間違っていましたか?

ありがとうございます。

+0

は、アプリケーションが実行されているマシン上のODBC接続を設定していますか? – Nathangrad

+0

ODBCデータソースアドミニストレータとの接続をテストしたところ、接続は成功しました。これはあなたが意味することですか? – Wulala2006

+0

https://www.connectionstrings.com/ – OldProgrammer

答えて

0

Driver={Oracle in OraClient12home1};DBQ={(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=abcd.efgh.net)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=service_name)))};UID=user_id;PWD=qassword"; 

代わりの

Driver={Oracle in OraClient12home1};DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=abcd.efgh.net)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=service_name)));USER ID=user_id;PASSWORD=qassword"; 

を試してみてはUsing the Oracle ODBC Driver: Format of the Connection Stringおよび/またはOracle in OraClient11g_home1 connection strings

+0

ありがとうございます。しかし、私はまだ同じエラーメッセージを持っています.. – Wulala2006

+0

アーキテクチャ(32対64ビット)を確認しましたか? –

+0

私はすべてのoracleクライアント/データベース用に64bitをインストールしたと信じています...しかし、アーキテクチャを再確認する方法は? – Wulala2006

関連する問題