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导出数据文件相关推荐

  1. oracle 水晶报表开发,水晶报表连接Oracle做数据报表笔记

    首先,新建一个水晶报表的文件,这个时候要给这个报表文件绑定一个oracle数据源, 选择右侧菜单的这个东西,选择"数据库专家",打开之后是这么一个界面: 选择建立新连接: 这个地方 ...

  2. 从Oracle导出数据到TXT文件从TXT文件导入数据到Oracle

    如果是txt文件的数据导入oracle中,数据量大的话用pl/sql会卡死,那么就要用到sqlload命令. 前两天在做一个不算任务的任务,用shell脚本将数据库中的数据导出到文件,在万能的百度上找 ...

  3. python连接oracle数据库 插入clob类型数据

    python连接oracle数据库 插入clob类型数据 连接数据库 import cx_Oracle as cx #导入模块 con = cx.connect('root', 'root123', ...

  4. python oracle 工具类,python连接Oracle工具类

    上代码: # -*- coding:utf-8 -*- import cx_Oracle import pandas as pd class ORACLE(object): def __init__( ...

  5. python连接oracle

    python连接oracle需要先根据oracle的版本到网上下载对应版本的instantclient,这个就自己去网上下载了,下载完了解压到某个文件夹即可. 然后在脚本的最前面加上这句:os.env ...

  6. Python 技术篇-连接oracle数据库并执行sql语句实例演示,python连接oracle数据库oci详细配置方法

    Python 连接 Oracle 数据库 第一章:连接 oracle 数据与环境配置 ① 连接 oracle 数据库效果演示 ② oci 下载 ③ oci 配置 ④ 环境变量配置 ⑤ 检测是否有 or ...

  7. python连接本机oracle数据库吗,用Python连接Oracle数据库容易吗?

    ello,大家好!本次介绍的内容是如何使用Python连接Oracle数据库!看起来很简单,但实际上就是这么简单.学习本节内容后,相信老铁们能用Python撸起你们那庞大的Oracle数据库了.Wel ...

  8. oracle数据导入表空间,ORACLE导入数据文件到指定的表空间

    最近工作中碰见ORACLE导入数据文件到指定的表空间中的事,虽然导入成功了.但这个功能应该算是我们在工作中经常碰见的需求,所以在此作个记录,以后用到也方便查找. 下面直接贴操作流程! Microsof ...

  9. oracle10G导入导出数据文件

    oracle10G导出数据文件: exp jfdzh/jfdzh@orcl file=/home/oracle/shiyan.dmp owner=jfdzh 导入数据文件: imp shiyan/sh ...

最新文章

  1. 深入Phtread(三):线程的同步-Condition Variables
  2. Hibernate:SQL查询 addScalar()或addEntity()
  3. 【Java】5.3 成员变量和局部变量
  4. UI设计师必知:link和@import引用css文件方法的区别
  5. 经典的K-means聚类算法
  6. wg运行内存装MySQL8_windows-安装mysql8的坑
  7. 在Java中安全地将long转换为int
  8. layout里添加xml文件没有在R.java里生成ID
  9. hive内置函数_Hive Query生命周期 —— 钩子(Hook)函数篇
  10. 什么是面向对象对象,什么是面向过程,什么是面向对象思想。
  11. 使用暴风激活激活系统,浏览器被劫持问题解决
  12. 雪球网股票用户评论爬虫
  13. 素数判断和大合数分解_素数合数分解公式与原理 质数秘密已解开
  14. Linux内核之进程管理
  15. Android仿keep运动轨迹动画,Android仿Keep运动休息倒计时圆形控件
  16. TB-RK1808M0最新固件烧录和驱动更新
  17. Vue3/ Vue3 组件通讯 -- 子传父 方法流程 总结
  18. java中所有import意思,java 程序中用到的所有类都必须使用 import 语句。
  19. 最强GPU助力,Imagination踏上新征途
  20. Down友庆新年,下载中心新版分享达人排行赛开始!【已结束】

热门文章

  1. Linux内核链表深度分析【转】
  2. HDU 3591 The trouble of Xiaoqian
  3. 用xml配置文件加载资源时(XML和XMLList的转换)
  4. 打开逻辑STANDBY写入功能
  5. 打印系列一:(套打解决方案(支持B/S和C/S))
  6. 合理修改3389端口
  7. 服务器监控报警系统软件设计,船舶机舱监控报警系统软件设计与实现
  8. c语言使单片机输出低电平,单片机开发中的一些实用技巧
  9. 【ABAP】BASE64加密及解密
  10. [面向对象] ABAP中类重构助手Refactoring Assitant