我正在try 重置密码.

r9mzsy20=# ALTER USER 9mz_dba WITH PASSWORD '92837474';
ERROR:  syntax error at or near "9"
LINE 1: ALTER USER 9mz_dba WITH PASSWORD '92837474..

对于用户u_9mz_rwu_9mz_ro,我能够重置密码.

ALTER USER u_9mz_ro PASSWORD '92837474' VALID UNTIL 'infinity';
ALTER USER u_9mz_rw PASSWORD '92837474' VALID UNTIL 'infinity';

但对于这个用户9mz_dba,我遇到了一个错误.

有人能帮忙吗?

这是我的用户列表:

image of the result of \du

推荐答案

try 在用户名周围添加双引号":

ALTER USER "9mz_dba" WITH PASSWORD '92837474';

4.1.1. Identifiers and Key Words:

SQL identifiers and key words must begin with a letter (a-z, but also letters with diacritical marks and non-Latin letters) or an underscore (_)
...
Quoted identifiers can contain any character, except the character with code zero.

这意味着用户/角色标识符以doesn'ta-z开头或下划线_是完全可以的,但要引用它,您需要将其包裹在双引号中.


此外,您丢失了带有插入符号^字符的错误消息的第3行,这应该澄清它指向的是前9字符,而不是第二个字符:demo

ERROR:  syntax error at or near "9"
LINE 2: ALTER USER 9mz_dba WITH PASSWORD '92837474';
                   ^

在PostgreSQL 1516中,数字文字处理已更改,这意味着错误消息也将更改,try 将其解释为数字但失败:demo

ERROR:  trailing junk after numeric literal at or near "9m"
LINE 2: ALTER USER 9mz_dba WITH PASSWORD '92837474';
                   ^

Postgresql相关问答推荐

Postgres 13.8 -如何在对数据执行窗口操作时返回所有行

ANTLR4 PostgreSQL语法被 destruct 了吗?

Postgres 使用不同元素数据类型的订单数据

如何重新格式化已获取的 psql 查询输出?

使用 OpenCypher 和 Apache AGE 在两个顶点之间创建双向关系

PostgreSQL:如何从另一列的 json 值替换为一列?

如何在 MockDataProvider 中创建自定义 JOOQ 记录?

找出两个表之间的差异

PostgreSQL 错误:42P01:relation "[Table]" does not exist

是否有 postgres CLOSEST 运算符?

SQLAlchemy 中使用什么类型存储字节字符串?

将主键更改为自动递增

Postgis 中 2 点之间的距离,单位为 4326 米

使用 Hibernate 查询:colon gets treated as parameter / escaping colon

在 Postgresql 中拆分逗号分隔的字段并对所有结果表执行 UNION ALL

全文的 Postgresql 前缀通配符

如何在Postgres中分组并返回总和行

PL/pgSQL 中的 BREAK 语句

PostgreSQL 9.1:如何连接数组中的行而不重复,加入另一个表

如何使用 postgresql 按计数排序?