python - 如何使用来自另一个表的数据在 Python 中更新 oracle 表
问题描述
我正在使用下面的代码
SQL = 'UPDATE TBL1 T1 SET T1.COL1 = (SELECT T2.COL1 FROM TBL2 T2 WHERE T1.ID = T2.ID)'
tmp_cursor=self.DB_conn.cursor()
tmp_cursor.execute(SQL)
我没有收到任何错误,但表格没有更新。
关于什么是错的任何建议?
解决方案
正如文档中所指出的,您需要将更改作为事务提交,以便其他用户和会话可以使用它们:
当您在 Oracle 数据库中操作数据(插入、更新或删除数据)时,更改或新数据仅在您的数据库会话中可用,直到它被提交到数据库。
因此,添加以下内容即可:
self.DB_conn.commit()