我运行了一个ALTER TABLE
查询来向表中添加一些列,然后db.commit()
。这不会引发任何错误或警告,但在oraclesqldeveloper中,SELECT * ...
上不会出现新列。在
所以我试图重新运行ALTER TABLE
,但它引发了
cx_Oracle.DatabaseError: ORA-14411: The DDL cannot be run concurrently with other DDLs
这有点有意义(我不能创建已经存在的列),但是当我试图用值填充新列时,我收到了一条消息
SQL Error: ORA-00904: "M0010": invalid ID
00904. 00000 - "%s: invalid identifier"
这表明新列尚未创建。在
有人知道会发生什么吗?在
更新/解决我又尝试运行了几次查询,在某个时候,事情突然开始工作(没有明显的原因)。可能是处理时间?会很奇怪,因为查询是超轻的。如果再发生这种事,我会再谈这个。在
首先,您不需要提交,DDL可以有效地提交任何事务。在
Ora-14411 means
所以,您的第一个ALTER TABLE语句似乎还没有完成(可能是表太大,或者其他一些问题)。在
相关问题 更多 >
编程相关推荐