Python执行Oracle SQL
需求
之前一直都是使用Oracle的存储过程来执行SQL,执行的SQL一般是INSERT INTO TABLE1 SLECT … FROM TABLE2 WHERE…;现在要改为Python执行,主要在于要插入数据的表和来源表都是变量(前面固定,后面为_yyyymm)。正常执行python脚本都需要 py example.py yyyymmdd
环境
Pycharm
Python连接Oracle
Python连接Oracle用的是cx-oracle的包
from cx_Oracle import *
con = connect(user = user_name, password = passwd, dsn = jdbc)
Python执行SQL
1.官方给出的执行sql语句,变量在SQL中用:v1表示,在执行方法里面去赋值。但是这种方法不能给表名设置变量,执行的时候会报错:表名不存在。
from cx_Oracle import *
con = connect(user = user_name, password = passwd, dsn = jdbc)
cursor = con.cursor()
cursor.execute("""
SELECT first_name, last_name
FROM employees
WHERE department_id = :did AND employee_id > :eid""",
did = 50,
eid = 190)
2.为了满足我的需求&