如何使用Linux终端在PostgreSQL中运行SQL文件?

时间:2016-10-24 09:09:43

标签: postgresql psql

我是一名软件测试员。我想在本地测试我的项目。所以我想使用psql命令插入数据库。我试了很多次。我无法访问登录页面。

这就是我所做的:

postgres@naveen-Inspiron-3542:/home/naveen$ psql -U admin docmgr

Password for user admin:  psql (9.5.4) Type "help" for help.

docmgr=> psql docmgr -f /var/www/html/docmgr/application/assets/dd/structs/docmgr_21Oct2016.sql -U admin
docmgr-> \dt No relations found.

docmgr-> \dt No relations found.

docmgr-> select * from admin_users;

ERROR:  syntax error at or
 near "psql" LINE 1: psql docmgr -f
 /var/www/html/docmgr/application/assets/dd/st...
         ^

1 个答案:

答案 0 :(得分:3)

这是错误的:

docmgr=> psql docmgr -f /var/www/html/docmgr/application/assets/dd/structs/docmgr_21Oct2016.sql

您正在psql内运行psql但是" psql"不是SQL语句。

您需要直接从命令提示符运行:

postgres@naveen-Inspiron-3542:/home/naveen$ psql -U admin -d docmgr -f /var/www/html/docmgr/application/assets/dd/structs/docmgr_21Oct2016.sql

或者从 psql中,您需要使用\i命令来运行SQL脚本:

postgres@naveen-Inspiron-3542:/home/naveen$ psql -U admin docmgr

Password for user admin:  psql (9.5.4) Type "help" for help.

docmgr=> \i /var/www/html/docmgr/application/assets/dd/structs/docmgr_21Oct2016.sql
相关问题