DROP Postgres SCHEMA 或 TABLE 使用 Windows 批处理文件

DROP Postgres SCHEMA or TABLE using Windows Batch File

  1. 我想使用 批处理文件 在 PostgreSQL 中执行 DROP 和 CREATE SCHEMA。我在很多机器上安装了 PostgresSQL,但没有像 PgAdmin 这样的界面。

  2. 我正在寻找一个简单的解决方案,让技术人员执行数据库重置并恢复生产站点的默认备份。批处理文件似乎是一个很好的解决方案。

  3. 我已经找到使用批处理文件恢复备份的命令。缺少的项目是 drop/create SCHEMA(因为我需要在恢复默认备份之前创建新的 SCHEMA)。

  4. 我尝试按照命令删除/创建模式。但是,它仅在通过 PgAdmin 使用时才有效,或者如果我在 postgres=# 提示下在 CMD 下手动键入。

DROP SCHEMA public CASCADE;
CREATE SCHEMA public;

GRANT ALL ON SCHEMA public TO postgres;
GRANT ALL ON SCHEMA public TO public;
  1. 在批处理文件中使用上述代码会产生以下错误。

'drop' is not recognized as an internal or external command, operable program or batch file.

有什么建议,请告诉我。预先感谢您的帮助。

将您想要 运行 的语句放入(文本)文件中,例如drop.sql

然后在你的批处理文件中使用:

psql -U <your_username_here> -d <your_database_here> -f drop.sql

psql 将提示您输入密码,请参阅 Run a PostgreSQL .sql file using command line arguments 以了解可能的解决方案。