我是postgresql的完全初学者。我创建了一个名为iswdp的测试数据库,现在我想删除它。当我这样做时:
dropdb iswdp
该命令不返回任何输出,当我列出表时,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上做这个。
答案 0 :(得分:3)
命令dropdb
是从shell提示符发出的命令。从sql提示符(如psql
)开始,您需要发出DROP DATABASE
命令。
我建议打开psql
并发出DROP DATABASE iswdp;
。这应该有用。
您可能会收到类似ERROR: cannot drop the currently open database
的错误,如果您连接到iswdp
并尝试删除它,就会发生错误。如果发生这种情况,请尝试连接到postgres
数据库,并发出相同的DROP DATABASE
命令。它应该工作。
答案 1 :(得分:1)
dropdb是一个来自shell的命令,而不是来自psql程序,来自psql,commnado是drop database iswp;