日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python连接oracle导出数据文件

發布時間:2025/3/20 python 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python连接oracle导出数据文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

python連接oracle,感覺table_list文件內的表名,來卸載數據文件

主腳本:

''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import os import logging import sys import configparser import subprocess import cx_Oracle#判斷輸入參數個數 class param():def check_para(self):if len(sys.argv) != 1:print("請輸入正確的參數:yyyymmdd")exit(1)else:print("繼續執行")#根據配置文件獲取登錄信息 class get_dbini():def get_db(self):config=configparser.ConfigParser()filepath="db.ini"if os.path.exists(filepath):config.read_file(open(filepath))dbinfo=[config.get("db_oracle","username"),\config.get("db_oracle","password"),\config.get("db_oracle","ip"),\config.get("db_oracle","dbsid")]else:loginfo.info("沒有那個配置文件")sys.exit(4)#聲明使用全局變量global username,password,ip,dbsidusername=dbinfo[0]password=dbinfo[1]ip=dbinfo[2]dbsid=dbinfo[3]loginfo.info(username+password+ip+dbsid)#導出表數據 class exp_date():def exp_table(self):with open('table_list','r') as f:list = f.readlines()for i in list:tablename = i.rstrip('\n')exportquery='sqluldr2 user='+username+'/'+password+'@'+ip+':1521/'+dbsid+' query="select * from '+tablename+';" head=no file='+tablename+'.dat field=0x03 record=0x030x0a safe=yes'loginfo.info("開始導出數據: exportquery= "+exportquery)flag= subprocess.check_call(exportquery,shell=True)loginfo.info(flag)#打印日志 class log_set():def logger_set(self):logger=logging.getLogger('mylogger')logger.setLevel(logging.DEBUG)fh=logging.FileHandler('a.log','w')fh.setLevel(logging.INFO)ch=logging.StreamHandler()ch.setLevel(logging.ERROR)formatter = logging.Formatter('%(asctime)s -%(name)s -%(levelname)s - %(message)s')fh.setFormatter(formatter)ch.setFormatter(formatter)logger.addHandler(fh)logger.addHandler(ch)return loggerif __name__=='__main__':loginfo=log_set().logger_set()param().check_para()get_dbini().get_db()exp_date().exp_table()

DB配置文件內容:

db.ini

[db_oracle] username=c##scott password=tiger ip=192.168.1.250 dbsid=orcl

表名字的配置文件:

table_list

BONUS DEPT EMP LEAD_TABLE SALGRADE T1 TB_USER TEST XGJ XGJ_2

運行結果:

[oracle@master2 tmp]$ python3 c.py 繼續執行 rows exported at 2019-01-22 17:51:51, size 0 MB.output file BONUS.dat closed at 0 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file DEPT.dat closed at 4 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file EMP.dat closed at 12 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file LEAD_TABLE.dat closed at 10 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file SALGRADE.dat closed at 5 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file T1.dat closed at 5 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file TB_USER.dat closed at 10 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file TEST.dat closed at 8 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file XGJ.dat closed at 9 rows, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB. rows exported at 2019-01-22 17:51:52, size 0 MB.output file XGJ_2.dat closed at 8 rows, size 0 MB.

查看日志:

[oracle@master2 tmp]$ more a.log 2019-01-22 17:51:51,858 -mylogger -INFO - c##scotttiger192.168.1.250orcl 2019-01-22 17:51:51,858 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from BONUS;" head=no file=BON US.dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:51,949 -mylogger -INFO - 0 2019-01-22 17:51:51,949 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from DEPT;" head=no file=DEPT .dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,038 -mylogger -INFO - 0 2019-01-22 17:51:52,038 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from EMP;" head=no file=EMP.d at field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,129 -mylogger -INFO - 0 2019-01-22 17:51:52,129 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from LEAD_TABLE;" head=no fil e=LEAD_TABLE.dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,299 -mylogger -INFO - 0 2019-01-22 17:51:52,300 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from SALGRADE;" head=no file= SALGRADE.dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,401 -mylogger -INFO - 0 2019-01-22 17:51:52,402 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from T1;" head=no file=T1.datfield=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,490 -mylogger -INFO - 0 2019-01-22 17:51:52,490 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from TB_USER;" head=no file=T B_USER.dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,578 -mylogger -INFO - 0 2019-01-22 17:51:52,578 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from TEST;" head=no file=TEST .dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,665 -mylogger -INFO - 0 2019-01-22 17:51:52,665 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from XGJ;" head=no file=XGJ.d at field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,771 -mylogger -INFO - 0 2019-01-22 17:51:52,771 -mylogger -INFO - 開始導出數據: exportquery= sqluldr2 user=c##scott/tiger@192.168.1.250:1521/orcl query="select * from XGJ_2;" head=no file=XGJ _2.dat field=0x03 record=0x030x0a safe=yes 2019-01-22 17:51:52,856 -mylogger -INFO - 0

總結

以上是生活随笔為你收集整理的python连接oracle导出数据文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。