2017-06-29 3 views
0

Ich schreibe ein Skript, das basierend auf zwei Umgebungsvariablen einen Postgres-Benutzer mit einem bestimmten Kennwort erstellt. Der folgende Code funktioniert jedoch nicht und ich habe keine Ahnung warum.Syntaxfehler beim Erstellen einer Rolle mit Passwort?

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"; 

Wenn ich die Anführungszeichen um $TESTING_DATABASE_PASSWORD entfernen, bekomme ich diesen Fehler:

ERROR: syntax error at or near "yoshi" 
LINE 1: CREATE ROLE yoshi WITH LOGIN PASSWORD yoshi; 

Antwort

0

fand ich eine Lösung, nicht sicher, wie „richtige“ ist.

export TESTING_DATABASE_PASSWORD="yoshi" 
TESTING_DATABASE_PASSWORD="'$TESTING_DATABASE_PASSWORD'" 
#... 
CREATE ROLE $TESTING_DATABASE_USERNAME WITH LOGIN PASSWORD $TESTING_DATABASE_PASSWORD; 
Verwandte Themen