PythonはOracleデータベースに接続します
第1章:Oracleデータと環境構成を接続する
①oracleデータベースへの接続の効果を示す
接続ステートメントは比較的単純ですが、構成に多くの問題がある可能性があります。
注:まず、サーバーのOracleバージョンが64ビットの場合、ローカルの64ビットのpythonと64ビットのociが使用されていることを確認する必要があります。それ以外の場合は、多くの落とし穴があります。
import cx_Oracle as cx
con = cx.connect('ncc_auto_0908', '1', '10.10.xx.xx:1521/orcl') # 创建连接
cursor = con.cursor() # 创建游标
cursor.execute("select pk_org, code, name from bd_supplier") # 执行sql语句
for i in cursor: # 打印数据
print(i)
cursor.close() # 关闭游标
con.close() # 关闭数据库连接
レンダリングを実行し、次の3つのフィールドのみを印刷しました。
②ociダウンロード
ociを使用するためにoracleデータベース全体をインストールする必要はありません。ociは軽量クライアントに相当します。
アドレスを取得してください:oracle install client official download
リモートデータベースダウンロードバージョンによると、これはデータベースのビット数と一致している必要があります。それ以外の場合は使用できません。
select * from v$version
③oci設定
ダウンロードしたツールを解凍したら、ルートフォルダーにネットワークフォルダーを追加し、adminフォルダーを追加して、新しいtnsnames.oraファイルを作成します。
tnsnames.oraファイルは、次の構成情報を追加します。
ここで、[10.10.xx.xx] / orclをリモートとしてデータベースに接続します。このような名前は簡単に識別できるため、名前は簡単に定義できます。
具体的な構成情報は次のとおりです。
[10.10.xx.xx]/orcl =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.xx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
④環境変数の設定
環境変数は4か所で構成する必要があります。まず、接続するデータベースの言語バージョンを確認し、環境変数に追加します。
select userenv('language') from dual;
2番目の場所では、ociに追加した設定ファイルをこのアドレスにポイントし、変数を追加します。
次に、ociのインストールパスをPathに追加します。
最後に、ociインストールの上位レベルを指すように新しいoracle_home変数が追加され、Pythonは完全なoracleクライアントがインストールされているように感じます。上記の4つの環境変数を設定した後、問題はありません。
Oracleクライアントのアンインストールの残りがないか確認します
NLS_LANG設定は問題ないが、操作でエラーが報告された場合は、レジストリを検索して、使用可能なNLS_LANGフィールドの数を確認できます。1つが正常な場合、これは環境変数に設定されている値です。