psqlは、psqlメタコマンドと、SQLコマンドの二つを受け付けて実行する。
psqlメタコマンドは\から始めるので簡単に区別できる。
psqlメタコマンド以外は、PostgresSQLデータベースに対するSQLコマンドとして実行される。
psqlはSQLコマンドの実行を命令されるまでSQLコマンドの入力を受け付け続ける。
SQLコマンドの事項は、行末に;(セミコロン)をつけて入力を行うか、psqlメタコマンド\gを実行する。改行すれば複数行に渡って入力を受け付ける。
psqlで複数行入力をした場合は、プロンプトは次のようになる:
通常のプロンプト <DB名>=#
2行名以降のプロンプト <DB名>-#
プロンプトに何を表示するかは、psqlの内部変数PROMPT1、PROMPT2で定義されている。
たてば、2行名以降のプロンプトの何も表示したくない場合、psqlメタコマンドを使って
PROMPT2の変数値を解除すればよい。
<DB名>=# \unset PROMPT2