我正在尝试使用“DROP TABLE”命令删除一些表,但出于未知原因,程序只是“停滞”,无法在数据库中删除我想要的表。
我的数据库中有3个表:
Product(产品)、Bill(账单)和Bill_Products(用于引用账单中的产品)。
我已经成功删除/丢弃了Product表,但我无法对不同的Bill和Bill_Products表进行相同的操作。 我发出了相同的“DROP TABLE Bill CASCADE;”命令,但命令行却一直处于停顿状态。 我还使用了不带“CASCADE”选项的简单版本。
你有任何想法是为什么会发生这种情况吗?
更新:
我一直在思考可能是由于数据库中保留了一些从产品到账单的引用,这就是为什么它无法删除Bill表。
因此,为此目的,我发出了一个简单的“SELECT * from Bill_Products”命令,大约过了10-15秒钟(奇怪的是,因为空表不应该需要这么长时间),它打印出了表及其内容,但其中没有内容。(因此显然从产品到账单已经没有引用了。)
psql
崩溃、挂起或冻结了吗?你必须杀掉它吗?Ctrl-C 是什么作用?我想我只是在说“卡住”是什么意思。或者你没有使用 psql? - alan