我正在编写一个脚本,该脚本将根据两个环境变量创建一个具有特定密码的Postgres用户。但是,以下代码不起作用,我不知道为什么。
export TESTING_DATABASE_USERNAME="yoshi"
export TESTING_DATABASE_PASSWORD="yoshi"
#...
CREATE ROLE $TESTING_DATABASE_USERNAME WITH LOGIN PASSWORD "$TESTING_DATABASE_PASSWORD";
------------------------------------------------------
ERROR: syntax error at or near ""yoshi""
LINE 1: CREATE ROLE yoshi WITH LOGIN PASSWORD "yoshi";
当我删除$TESTING_DATABASE_PASSWORD
周围的引号时,我收到此错误:
ERROR: syntax error at or near "yoshi"
LINE 1: CREATE ROLE yoshi WITH LOGIN PASSWORD yoshi;
答案 0 :(得分:0)
我找到了一个解决方案,不确定它是多么“正确”。
export TESTING_DATABASE_PASSWORD="yoshi"
TESTING_DATABASE_PASSWORD="'$TESTING_DATABASE_PASSWORD'"
#...
CREATE ROLE $TESTING_DATABASE_USERNAME WITH LOGIN PASSWORD $TESTING_DATABASE_PASSWORD;