2016-10-28 32 views
-1

我的问题很简单:可能吗?如果是这样,它是用Python代码还是SQL查询完成的?是否可以从Python直接打印到Oracle表格?

我已经通过cx_Oracle连接了这两个程序,但无法将数据从Python导出到Oracle表中。我没有在这个主题上专门找到许多在线资源。

原因这个问题是如此之短的一点是因为无论是我的前两次(非常非常具体和深入的)有任何质量对策:

How to export parsed data from Python to an Oracle table in SQL Developer?

https://stackoverflow.com/questions/40306499/how-to-print-to-an-oracle-table-from-python

+0

很确定你正在寻找这个:http://stackoverflow.com/questions/40306499/how-to-print-to-an-oracle-table-from-python有了答案,是的,它可以完成带有插入语句。 –

+0

当然,你可以做到这一点。有很多方法可以在Python中连接到数据库。您可以通过在您的代码中构建SQL并使用适当的驱动程序将其发送到服务器来与Oracle数据库交谈。这个问题可能有点不成熟。你谷歌“如何使用python连接到oracle数据库”?那里有大量的资源。 也有ORM库,像SQLAlchemy的ORM,它提供了一个数据库接口的抽象。不要编写SQL quries,而只是操作Python对象。 – sytech

+0

我已经成功将Oracle连接到Python,cx_Oracle模块充当了两者之间的桥梁,我只是努力将数据直接打印到我的数据库中......我显然不能使用print()函数,而且我也没有成功使用INSERT命令 – Stephen

回答

0

尝试沿着这些线:

import cx_Oracle 
con = cx_Oracle.connect('pythonhol/[email protected]/orcl')#change this to your database information... 
rows = [ (1, "First"), 
     (2, "Second"), 
     (3, "Third"), 
     (4, "Fourth"), 
     (5, "Fifth"), 
     (6, "Sixth"), 
     (7, "Seventh") ] 
cur = con.cursor() 
cur.bindarraysize = 7 
cur.setinputsizes(int, 20) 
cur.executemany("insert into mytab(id, data) values (:1, :2)", rows) 
#con.commit() 
# Now query the results back 
cur2 = con.cursor() 
cur2.execute('select * from mytab') 
res = cur2.fetchall() 
print res 

cur.close() 
cur2.close() 
con.close() 

此代码被发现在Oracle's website;如果这不能回答您的问题,或者您无法完成工作,请回复评论。祝你好运!

相关问题