python使用oracle查询数据库,查询语句中使用变量值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python使用oracle查询数据库,查询语句中使用变量值相关的知识,希望对你有一定的参考价值。
代码如下:
import cx_Oracle
def getdata(Item):
conn=cx_Oracle.connect('p00292','pan00292','hsmmdb-rac-scan.uniview.com:1521/HSMM')
cursor= conn.cursor()
cursor.execute('select * from INV.MTL_ITEM_REVISIONS where ROW_ID= %s'% (Item,))
fir=cursor.fetchone()
print fir
getdata('AAAdjoAAzAAABL7AAB')
运行python后显示的错误消息如下:
D:\Python27\python.exe D:/python自动化测试/ceshi1.py
Traceback (most recent call last):
File "D:/python自动化测试/ceshi1.py", line 8, in <module>
getdata('AAAdjoAAzAAABL7AAB')
File "D:/python自动化测试/ceshi1.py", line 5, in getdata
cursor.execute('select * from INV.MTL_ITEM_REVISIONS where ROW_ID= %s'% (Item,))
cx_Oracle.DatabaseError: ORA-00904: "AAADJOAAZAAABL7AAB": invalid identifier
请大神们赐教
换为:
qry_sql = "select * from INV.MTL_ITEM_REVISIONS where ROW_ID= '%s'" % Item
cursor.execute(qry_sql) 参考技术B ROWID值的%s 需要单引号 参考技术C getdata("'AAAdjoAAzAAABL7AAB'")
oracle查询语句中in后面数据较多怎么优化
参考技术A 使用exists替换更有效率以上是关于python使用oracle查询数据库,查询语句中使用变量值的主要内容,如果未能解决你的问题,请参考以下文章