我刚刚用 Firebird 数据库发生了一些非常奇怪的事情。
我试图创建一个表,但 CREATE TABLE 由于某种原因失败了。但是现在它陷入了一种非常奇怪的状态:
如果我再次尝试CREATE TABLE
使用相同的表名,则会出现错误:该表已存在。但是,如果我尝试访问DROP TABLE
该表,则会出现错误:该表不存在。尝试使用SELECT * FROM
该表会出现“表不存在”错误,并且该名称不会出现在元数据查询中:
SELECT RDB$RELATION_NAME
FROM RDB$RELATIONS
WHERE RDB$SYSTEM_FLAG=0
因此,出于某种原因,该表似乎确实不存在,但我无法创建它,因为某处的某些东西表明它确实存在。
有谁知道如何解决这个问题?我已经尝试关闭与该数据库的所有连接,这在过去有助于解决不一致问题,但这次没有帮助。