【问题标题】:Table doesn't exist on db that was created via python通过 python 创建的 db 上不存在表
【发布时间】:2026-01-25 23:15:01
【问题描述】:

我使用以下代码在python中创建了一个表。

import cx_Oracle as db

conn = db.connect('scott/tiger@localhost/orcl')  
cursor = conn.cursor()  
cursor.execute("create table films(title varchar(10), year varchar(10), director varchar(10))")  
print("table created")  

但是当我尝试从 SQLplus 访问该表时,它说该表不存在。
当试图再次运行代码时,我得到了错误

“cx_Oracle.DatabaseError: ORA-00955: name is already used by an existing object”

这里出了什么问题。

我刚开始学习python。非常感谢您的帮助。

【问题讨论】:

  • 它确实说该表不存在。它表示“名称已被现有对象使用”,即表存在。您只需要创建一次...
  • @Ben:啊,Oracle DDL is indeed not transactional。我会删除评论。

标签: python oracle create-table cx-oracle ora-00955


【解决方案1】:

也许您正在使用 2 个不同的数据库

【讨论】: