首页 > 解决方案 > 如何使用来自另一个表的数据在 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)

我没有收到任何错误,但表格没有更新。

关于什么是错的任何建议?

标签: pythonsqloracle

解决方案


正如文档中所指出的,您需要将更改作为事务提交,以便其他用户和会话可以使用它们:

当您在 Oracle 数据库中操作数据(插入、更新或删除数据)时,更改或新数据仅在您的数据库会话中可用,直到它被提交到数据库。

因此,添加以下内容即可:

self.DB_conn.commit()

推荐阅读