我是Postgresql的一个完整的初学者。我创建了一个名为iswdp的测试数据库,现在我想删除它。当我做:

dropdb iswdp

该命令不返回任何输出,并且当我\list表iswdp时仍然存在。
dropdb iswdp;

返回:

错误:“dropdb”或附近的语法错误
第1行:dropdb iswdp

我用了:
SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE datname = current_database()
AND pid <> pg_backend_pid();

我从另一个stackoverflow帖子中发现要断开与所有数据库的连接,然后再次尝试dropdb iswdp,结果相同。

我被困住了,有人可以帮我吗?我正在从bash终端在Linux mint上执行此操作。

最佳答案

命令dropdb是从shell提示符下发出的命令。在sql提示符下(例如psql),您将要发出DROP DATABASE命令。

我建议打开psql并发出DROP DATABASE iswdp;。那应该工作。

您可能会收到类似于ERROR: cannot drop the currently open database的错误,如果您连接到iswdp并尝试将其删除,则会发生此错误。如果发生这种情况,请尝试连接到postgres数据库,并发出相同的DROP DATABASE命令。它应该工作。

关于sql - dropdb mydb在postgres中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45172939/

10-16 07:41