デマンド:1つのOracleデータベースからデータを取得し、思考が直接、元のSqlClient OracleClientの呼び出しに、彼らははるかに単純なものから結果を望んで、非常にシンプルなものです。どちらのOracleクライアントをインストールする、またはPLSQLをインストールします。この点で、インターネットを検索した後、あまりにも多くの記事が、また、テストを停止します。最後に、外部ライブラリを導入する方法を見つけます。このDLLは、公式ににダウンロード(しかし、それは非常に面倒見つける)ことができ、C#Oracleへ実際に専用されています。
ここで私は他の人にこのプログラムとDLLを置きます。
リンクします。https://pan.baidu.com/s/17saKNnBVyDvMbt1L8lSf6Aの
抽出コード:sr97
DEMO例
使用してOracle.ManagedDataAccess.Clientを; //名前空間が導入 プライベート 無効のbutton1_Click(オブジェクト送信者、EventArgsの電子) { 文字列 STRSQL = " S_USER SELECT * FROM " ; データテーブルDT = QueryDt(STRSQL)。 } // Oracleの连接字符串 プライベート 静的な 文字列 strconn = " データソース=(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST = 172.30.0.37)(PORT = 1521))(CONNECT_DATA =(SERVICE_NAME = EMES)));ユーザーID = EMES_DEV;パスワード= EMES_DEV;セキュリティ情報=真の永続」。 プライベートのDataTable QueryDt(文字列のsql) { 使用して(OracleConnectionのCONN = 新しいのOracleConnection(strconn)) { 試します { もし(conn.State!= ConnectionState.Open) { conn.Open(); } OracleDataAdapterのADAP = 新しいOracleDataAdapterの(SQL、CONN)。 DataTable dtを = 新しいのDataTable(); adap.Fill(DT)。 リターンDT; } キャッチ(例外の例) { リターン ヌル。 } 最後に { conn.close(); } } }
接続文字列のフォーマット:
1つの フォーマット: 2 文字列 strConn = " データソース=(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST = 172.30.0.37)(PORT = 1521))(CONNECT_DATA =(SERVICE_NAME = EMES)));永続セキュリティ情報=真;ユーザーID = EMES_DEV;パスワード= EMES_DEV; " ; 3。 4。 形式: 5。 文字列 strConn = " データソース=(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST =リモートサーバのIPアドレス)(PORT = 1521)) (CONNECT_DATA =(SERVICE_NAME =リモートサーバのデータベース・サービス名)));セキュリティ情報=が持続真;ユーザーID = データベースのユーザー名、パスワード=パスワードデータベースを; " ;
次のようにリモートサーバーのデータベース・サービス名は次のとおりです。
効果: