简短回答:query = """
insert into TABLE(FIELD1, FIELD2, ...) values (VAL1, VAL2, ...)
"""
cur = con.cursor()
cur.execute(query)
cur.commit()
长话短说:
这是针对Linux的,特别是针对Red Hat。只有末尾的Python代码可以在每个操作系统上使用。尝试使这些步骤适应您的操作系统。在
0:安装包libaio和python-dev(或python-devel,检查发行版)
1:如果没有pip,请安装它
2:从Oracle site安装oracle instantclient-basic和{}(或instantclient-devel)
3:使用bash启动这些命令。如果您没有/etc/profile.d/,请检查您的发行版。在
^{pr2}$
4:注销并重新登录
5:在使用cx Oracle之前,您必须设置LD_LIBRARY_PATH我建议您而不是全局设置它:export LD_LIBRARY_PATH="$ORACLE_HOME/lib"
6:最后,Python代码:import cx_Oracle
os.environ["NLS_LANG"] = "AMERICAN_AMERICA.UTF8"
con_str = "USERNAME/PASSWORD@HOST:PORT/DBNAME"
con = cx_Oracle.connect(con_str)
query = """
select 1 from dual
"""
cur = con.cursor()
cur.execute(query)
rows = cur.fetchall()
for row in rows:
print(row) # it should print "1"
con.close()
您必须用您的用户名、密码等更改con_str。设置{}编码的行是可选的,可以根据您的需要进行调整,但建议这样做。在
7:如果要插入行:query = """
insert into TABLE(FIELD1, FIELD2, ...) values (VAL1, VAL2, ...)
"""
cur = con.cursor()
cur.execute(query)
cur.commit()
如果您不能信任数据的来源,我强烈建议您使用prepared statements。在
资料来源: