2

我是 cx_oracle 的新手。我已经建立了连接,并且可以使用执行创建和删除表。

我失败的地方是当我尝试在执行中使用“INSERT INTO ...”时。它没有显示任何错误,但也没有存储任何值(我通过检查该条目是否使用 shell 中的 sqlplus 进行了确认)。我使用的代码是:

table_name = "T1"
column = "D"
insert_value = "test value"

sqlcode = "INSERT INTO "+table_name+" ("+column+") VALUES ('"+insert_value+"')"
cursor.execute(sqlcode)

请帮助我,任何帮助将不胜感激。

提前致谢。Ĵ

4

2 回答 2

11

cursor.commit当 Cursor 中的方法没有提交时如何工作,连接有这种方法,因此它应该是:

    connection.commit()

使用cursor.commit()回报:
AttributeError: 'cx_Oracle.Cursor' object has no attribute 'commit'

于 2013-05-22T10:43:29.830 回答
2

奇怪的是您没有收到该代码的错误;当然,除非您(可悲地)调用 Cursor 对象,connect.

在所有代码之前,您需要在某个地方有这样的东西:

conn = cx_Oracle.connect(usr, pwd, url)
cursor = conn.cursor()

然后继续用connect.execute(sqlcode)替换cursor.execute(sqlcode)

于 2011-04-13T23:42:37.707 回答