无法使用psql创建数据库

时间:2014-06-03 05:10:35

标签: postgresql psql

我试图使用psql在PostgreSQL中创建数据库,为此我创建了一个包含以下脚本的database.sql文件

  

database.sql

CREATE DATABASE "RStar"  WITH OWNER = postgres  ENCODING = 'UTF8' TABLESPACE = pg_default

LC_COLLATE = 'English_United States.1252' LC_CTYPE = 'English_United States.1252'  

CONNECTION LIMIT = -1;
  • 使用上述脚本我可以手动创建数据库RStar(通过pgAdmin

  • 当我尝试使用psql执行相同操作时,我收到此错误:

enter image description here

我使用以下脚本使用database.sql

调用psql文件
psql -U postgres  -d postgres -a -f  "D:\PG\Database.sql" 

1 个答案:

答案 0 :(得分:3)

这对我有用

而不是调用创建的database.sql文件

 psql -U postgres  -d postgres -c "CREATE DATABASE "\"RStar"\"  WITH OWNER = postgres ENCODING = 'UTF8' TABLESPACE = pg_default LC_COLLATE = 'English_United States.1252' LC_CTYPE = 'English_United States.1252' CONNECTION LIMIT = -1"
  • 应该使用ecape字符作为数据库名称,因为在我的情况下,数据库名称是混合大小写RStar所以在创建脚本中需要包含转义字符,即"\"RStar"\"
  

操作系统:Windows