[pgsql-jp: 41720] ユーザ名のダブルクォート

SAKAIDA sakaida @ psn.ne.jp
2014年 9月 3日 (水) 11:25:44 JST


境田と申します。

しばらくPostgreSQLから離れていましたので、初歩的な質問で
恐縮です。

現在、PostgreSQL 8.4.20 を使用しています。ハイフォン付の
ユーザ名のパスワード変更は次のようにダブルクォートで囲む
必要があります。

alter role "xxx-xxx" with password 'yyyyyyyy';

しかし、alte文全体をダブルクォートで囲む必要がある場合、
ユーザ名をシングルクォートで囲むことができれば便利です。

「ユーザ名をシングルクォートで囲む文法」を許さないという
理由はあるのでしょうか?

可能ならば、PostgreSQLのバージョンアップ項目に追加してい
ただきたいな〜と思っています。

※ ユーザ名をシングルクォートで囲みたいという例

   bashスクリプト内で、expectを使用してpsqlの自動化を行う
   場合などです。

  (一部抜粋)
   expect -c "
     set timeout 5
     spawn su - $pgsql
     send \"psql\n\"
     expect \"パスワード:\"
     send \"$passwd\n\"
     expect \"$pgsql=# \"
     send \"alter role $userid with password '$passwd';\n\"
     send \"\\\q\n\"
     send \"exit\n\"
     interact
   "

--
SAKAIDA Masaaki



pgsql-jp メーリングリストの案内