一般的な自動テストスクリプト - Oracleデータベースの接続

#のOracleデータベース接続

* - -コーディング:UTF-8 - * - インポートcx_Oracle Oracleなど から DBUtils.PooledDB インポートPooledDBの クラスOrclPool(オブジェクト): "" " 。1)ここで、Oracle接続プールをパッケージに関連する機能の数。 2)およびSID SERVICE_NAME、プログラムは、自動的に決定された値を有する 二つの値がある場合、SIDのデフォルトを使用して、; 一方が使用したい場合、唯一の他のSERVICE_NAME =」として設定されている空に必要。 ' 3)コンフィグ上に配置され、値の唯一のタイプは、ポートINTであり、他はSTRである: "" " DEF __init__ (セルフ、コンフィグ): self.conn = OrclPool __get_conn (設定) self.cur = self.conn .CURSOR() @staticmethod DEF __get_conn (CONF): 「」 " いくつかのPoolDBパラメータを使用してもよいし、選択するための実際の状況に応じて自分の mincached:オープンエアの接続の数は、あなたが起動したときに maxcached:接続の接続プールの利用可能な最大数は maxshared:共有することができる接続の接続プールの最大数 MaxConnectionsをします:接続の最大数が許容 ブロッキング:最大数がブロックされ達する 最大単一接続多重周波数:maxusage :PARAMのCONF:Oracle接続情報のdict 「」 " ホスト、ポート、SID、SERVICE_NAME = conf.get(ホスト) conf.get(' ポート')、conf.get(' SID ')、conf.get(' SERVICE_NAME ' DSN = なし の場合SID: DSN = Oracle.makedsn(ホスト、ポート、SID = SID) ELIFのSERVICE_NAME: DSN = Oracle.makedsn(ホスト、ポート、SERVICE_NAME = conf.get(' SERVICE_NAME ' )) __pool = PooledDB(オラクル、ユーザー= CONF [ ' ユーザー' ]、パスワード= CONF [ ' passwdの' ]、DSN = DSN、mincached = 1、maxcached = 5 リターン __poolの.connection() デフ EXECUTE_SQL(自己、SQL、引数= なし): "" " 执行SQL语句 :のparam SQL:STR SQL文 :のparam引数:リストパラメータリストのSQL文 "" " IF 引数: self.cur.execute(SQL、引数) self.cur.execute(SQL)は DEF(セルフ、SQLをfetch_all、引数= なし): "" " 完全な結果を得る :のparam SQL:STR SQL文 :PARAM引数:リストSQL文のパラメータ :リターン:タプルは結果フェッチ " "" self.execute_sql(SQL、引数) 戻りself.cur.fetchallを() DEFのcommit_sql(セルフ、SQL): self.cur.execute(SQL) self.conn。)(コミット DEF __del__(自己): "" " リソース・インスタンスに回収され、接続が閉じられたプールである " "" self.cur.close() self.conn.close() IF __name__ == " __main__ " orcl_cfgは = { ' ユーザ'「ユーザ名、#データベースのユーザー名 passwdのパスワード、#データベースのパスワード ホスト「0.0.0.0 、#データベースリンクアドレス ポート:3000 、#ポート ' SID ''' ' SERVICE_NAME '' tpi2hx '、データベース名# } ORCL = OrclPool(orcl_cfg)

 

おすすめ

転載: www.cnblogs.com/chenri/p/11365694.html
おすすめ