无法使用psql创建数据库

4

我正在尝试使用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" 

3
在“psql”之前有一些多余的字符,很可能是Unicode BOM - Milen A. Radev
@MilenA.Radev 感谢您的评论,我已经找到了解决方案。 - Vivek S.
1个回答

4

这对我有效

不要调用创建的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"
  • 因为数据库名称是大小写混合的,所以我应该在数据库名称中使用“转义”字符 - "\"RStar"\"

操作系统: Windows


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接