2010-02-19 45 views
22

我很难修改其名称中包含破折号的postgres用户 - 我已经多次遇到此问题,但无法找到答案(无论我使用多少Google搜索!)。Postgresql - 在用户名中转义破折号

osm=# grant all on osm_polygon_view to www-data;

ERROR: syntax error at or near "-"

LINE 1: grant all on osm_polygon_view to www-data;

         ^

我已经尝试过几乎每个转义字符和引号的排列,并且仍然无法获得这个工作。我在尝试更改www数据密码时也遇到过这种情况。

回答

34

双引号是你应该使用的 - 不是单引号。

grant all on osm_polygon_view to "www-data";

+2

使用双引号使'分隔标识符' - 用于诸如表名或列名以及用户名之类的东西。 – 2010-02-19 03:41:55