利用可能なコマンド・SQL文について

対象リージョン:東日本第1/第2、西日本第1/第2

データベースサービスにおいて利用可能なクライアントコマンドである、SQL文範囲について説明します。

クライアントコマンド

本データベースサービスで利用可能なコマンドを、以下に示します。

各クライアントコマンドの詳細については、「PostgreSQL文書」の「PostgreSQLクライアントアプリケーション」を参照してください。

表 1. 利用可能なクライアントコマンド 一覧
コマンド名 用途
clusterdb データベースをクラスタ化(テーブルをインデックス情報に基づいて物理的に並べ替え)する
createdb

新しいデータベースを作成する

注: -Eオプションは指定できません。
createuser 新しいユーザーアカウントを定義する
dropdb データベースを削除する
dropuser ユーザーアカウントを削除する
ecpg 埋め込みSQL用Cプリプロセッサを使用する
ecobpg 埋め込みSQL用COBOLプリプロセッサを使用する(※)
pgbench データベースに対してベンチマーク試験を行う(※)
pg_config インストールしたバージョンの情報を提供する
pg_dump データベースを、スクリプトファイルまたはほかのアーカイブファイルへ抽出する
pg_dumpall データベースクラスタをスクリプトファイルへ抽出する
pg_isready サーバの接続状態を検査する(※)
pg_recvlogical ストリームの論理デコードを制御する(※)
pg_restore pg_dumpによって作成されたアーカイブファイルから、データベースをリストアする
psql コマンドを対話的に実行する
reindexdb データベースのインデックスを再作成する
vacuumdb データベースの不要領域の回収と解析を行う

※:データベースエンジンがSymfoware Serverの場合は使用できません。

SQL文

本データベースサービスで利用可能なSQL文を、以下に示します。

各SQL文の構文については、「PostgreSQL文書」の「SQLコマンド」を参照してください。

表 2. 利用可能なSQL文 一覧
SQL文 用途
ABORT 現在のトランザクションをアボートする
ALTER AGGREGATE 集約関数定義を変更する
ALTER COLLATION 照合順の定義を変更する
ALTER CONVERSION 変換の定義を変更する
ALTER DATABASE データベースを変更する(※1)
ALTER DEFAULT PRIVILEGES デフォルトのアクセス権限を定義する
ALTER DOMAIN ドメイン定義を変更する
ALTER EVENT TRIGGER イベントトリガの定義を変更する(※2)
ALTER EXTENSION 拡張の定義を変更する
ALTER FOREIGN TABLE 外部テーブルの定義を変更する(※2)(※3)
ALTER FUNCTION 関数定義を変更する(※1)
ALTER GROUP ロールの名前またはメンバー資格を変更する
ALTER INDEX インデックス定義を変更する
ALTER LARGE OBJECT ラージオブジェクトの定義を変更する
ALTER MATERIALIZED VIEW マテリアライズドビューの定義を変更する(※2)
ALTER OPERATOR 演算子の定義を変更する
ALTER OPERATOR CLASS 演算子クラスの定義を変更する
ALTER OPERATOR FAMILY 演算子族の定義を変更する
ALTER POLICY 行単位のセキュリティポリシーの定義を変更する(※2)
ALTER ROLE データベースロールを変更する(※1)
ALTER RULE ルールの定義を変更する(※2)
ALTER SCHEMA スキーマ定義を変更する
ALTER SEQUENCE シーケンスジェネレーターの定義を変更する
ALTER SERVER 外部サーバの定義を変更する(※2)(※3)
ALTER TABLE テーブル定義を変更する
ALTER TABLESPACE テーブル空間の定義を変更する
ALTER TEXT SEARCH CONFIGURATION テキスト検索設定の定義を変更する
ALTER TEXT SEARCH DICTIONARY テキスト検索辞書の定義を変更する
ALTER TEXT SEARCH PARSER テキスト検索パーサの定義を変更する
ALTER TEXT SEARCH TEMPLATE テキスト検索テンプレートの定義を変更する
ALTER TRIGGER トリガ定義を変更する
ALTER TYPE 型定義を変更する
ALTER USER データベースロールを変更する
ALTER USER MAPPING ユーザーマップの定義を変更する(※2)(※3)
ALTER VIEW ビュー定義を変更する
ANALYZE データベースに関する統計を集計する
BEGIN トランザクションブロックを開始する
CHECKPOINT トランザクションログのチェックポイントを強制的に実行する
CLOSE カーソルを閉じる
CLUSTER インデックスに従ってテーブルをクラスタ化する
COMMENT オブジェクトのコメントを定義する、または変更する
COMMIT 現在のトランザクションをコミットする
COMMIT PREPARED 二相コミット用に事前に準備されたトランザクションを、コミットする
COPY クライアントとデータベースのテーブルの間で、データをコピーする(※4)
CREATE AGGREGATE 新しい集約関数を定義する(※5)
CREATE CAST 新しいキャストを定義する(※5)
CREATE COLLATION 新しい照合順序を定義する
CREATE CONVERSION 新しい符号化方式変換を定義する(※5)
CREATE DATABASE 新しいデータベースを作成する(※6)
CREATE DOMAIN 新しいドメインを定義する
CREATE EVENT TRIGGER 新しいイベントトリガを定義する(※2)
CREATE EXTENSION 拡張をインストールする
CREATE FOREIGN TABLE 新しい外部テーブルを定義する(※2)(※3)
CREATE FUNCTION 新しい関数を定義する(※1)(※7)
CREATE GROUP 新しいデータベースロールを定義する
CREATE INDEX 新しいインデックスを定義する
CREATE MATERIALIZED VIEW 新しいマテリアライズドビューを定義する(※2)
CREATE OPERATOR 新しい演算子を定義する(※5)
CREATE OPERATOR CLASS 新しい演算子クラスを定義する(※5)
CREATE OPERATOR FAMILY 新しい演算子族を定義する
CREATE POLICY テーブルに新しい行単位のセキュリティポリシーを定義する(※2)
CREATE ROLE 新しいデータベースロールを定義する
CREATE RULE 新しい書き換えルールを定義する
CREATE SCHEMA 新しいスキーマを定義する
CREATE SEQUENCE 新しいシーケンスジェネレーターを定義する
CREATE SERVER 新しい外部サーバを定義する(※2)(※3)
CREATE TABLE 新しいテーブルを定義する
CREATE TABLE AS 問合せの結果によって新しいテーブルを定義する
CREATE TABLESPACE 新しいテーブル空間を定義する(※8)
CREATE TEXT SEARCH CONFIGURATION 新しいテキスト検索設定を定義する
CREATE TEXT SEARCH DICTIONARY 新しいテキスト検索辞書を定義する
CREATE TEXT SEARCH PARSER 新しいテキスト検索パーサを定義する(※5)
CREATE TEXT SEARCH TEMPLATE 新しいテキスト検索テンプレートを定義する(※5)
CREATE TRIGGER 新しいトリガを定義する(※5)
CREATE TYPE 新しいデータ型を定義する(※5)
CREATE USER 新しいデータベースロールを定義する
CREATE USER MAPPING 外部サーバのユーザーマップを新しく定義する(※2)(※3)
CREATE VIEW 新しいビューを定義する
DEALLOCATE 準備された文の割当てを解除する
DECLARE カーソルを定義する
DELETE テーブルから行を削除する
DISCARD セッションの状態を破棄する
DO 無名コードブロックを実行する
DROP AGGREGATE 定義済みの集約関数を削除する
DROP CAST 定義済みのキャストを削除する
DROP COLLATION 定義済みの照合順序を削除する
DROP CONVERSION 定義済みの変換を削除する
DROP DATABASE 定義済みのデータベースを削除する
DROP DOMAIN 定義済みのドメインを削除する
DROP EVENT TRIGGER 定義済みのイベントトリガを削除する(※2)
DROP EXTENSION 定義済みの拡張を削除する
DROP FOREIGN TABLE 定義済みの外部テーブルを削除する(※2)(※3)
DROP FUNCTION 定義済みの関数を削除する
DROP GROUP 定義済みのデータベースロールを削除する
DROP INDEX 定義済みのインデックスを削除する
DROP MATERIALIZED VIEW 定義済みのマテリアライズドビューを削除する(※2)
DROP OPERATOR 定義済みの演算子を削除する
DROP OPERATOR CLASS 定義済みの演算子クラスを削除する
DROP OPERATOR FAMILY 定義済みの演算子族を削除する
DROP OWNED 定義済みのデータベースロールにより所有されるデータベースオブジェクトを削除する
DROP POLICY テーブルから行単位のセキュリティポリシーを削除する(※2)
DROP ROLE 定義済みのデータベースロールを削除する
DROP RULE 定義済みの書き換えルールを削除する
DROP SCHEMA 定義済みのスキーマを削除する
DROP SEQUENCE 定義済みのシーケンスを削除する
DROP SERVER 外部サーバの記述子を削除する(※2)(※3)
DROP TABLE 定義済みのテーブルを削除する
DROP TABLESPACE 定義済みのテーブル空間を削除する
DROP TEXT SEARCH CONFIGURATION 定義済みのテキスト検索設定を削除する
DROP TEXT SEARCH DICTIONARY 定義済みのテキスト検索辞書を削除する
DROP TEXT SEARCH PARSER 定義済みのテキスト検索パーサを削除する
DROP TEXT SEARCH TEMPLATE 定義済みのテキスト検索テンプレートを削除する
DROP TRIGGER 定義済みのトリガを削除する
DROP TYPE 定義済みのデータ型を削除する
DROP USER 定義済みのデータベースロールを削除する
DROP USER MAPPING 外部サーバ用のユーザーマップを削除する(※2)(※3)
DROP VIEW 定義済みのビューを削除する
END 現在のトランザクションをコミットする
EXECUTE 準備された文を実行する
EXPLAIN 問合せ文の実行計画を表示する
FETCH カーソルを使用してテーブルから行を抽出する
GRANT アクセス権限を定義する
IMPORT FOREIGN SCHEMA 外部サーバからテーブル定義をインポートする(※2)
INSERT テーブルに新しい行を作成する
LISTEN 通知を監視する
LOCK テーブルをロックする
MOVE カーソルの位置を決める
NOTIFY 通知を生成する
PREPARE 実行する文を準備する
PREPARE TRANSACTION 二相コミット用に現在のトランザクションを準備する
REASSIGN OWNED あるデータベースロールにより所有されたデータベースオブジェクトの所有権を、変更する
REFRESH MATERIALIZED VIEW マテリアライズドビューの内容を置換する(※2)
REINDEX インデックスを再構築する
RELEASE SAVEPOINT 設定済みのセーブポイントを破棄する
RESET 実行時パラメーターの値をデフォルト値に戻す(※1)
REVOKE アクセス権限を取り消す
ROLLBACK 現在のトランザクションをアボートする
ROLLBACK PREPARED 事前に二相コミット用に準備されたトランザクションを、取り消す
ROLLBACK TO SAVEPOINT セーブポイントまでロールバックする
SAVEPOINT 現在のトランザクション内に、新規にセーブポイントを定義する
SECURITY LABEL オブジェクトに適用するセキュリティラベルを、定義または変更する
SELECT テーブルまたはビューから行を検索する
SELECT INTO 問合せの結果からの新しいテーブルを定義する
SET 実行時パラメーターを変更する(※1)
SET CONSTRAINTS 現在のトランザクションにおける制約の検査方法を、設定する
SET ROLE 現在のセッションにおけるユーザー識別子を設定する
SET SESSION AUTHORIZATION セッションのユーザー識別子、現在のセッションのユーザー識別子を、設定する
SET TRANSACTION 現在のトランザクションの特性を設定する
SHOW 実行時パラメーターの値を表示する
START TRANSACTION トランザクションブロックを開始する
TRUNCATE 1テーブルまたはテーブル群を空にする
UNLISTEN 通知の監視を停止する
UPDATE テーブルの行を更新する
VACUUM データベースの不要領域の回収と、データベースの解析(オプション)を行う
VALUES 行セットを計算する

※1:configuration_parameterを指定する場合、値にディレクトリパスを記述するパラメーターは指定できません。

※2:データベースエンジンがSymfoware Serverの場合は使用できません。

※3:外部データラッパとしてpostgres_fdwだけ使用できます。

※4:FROMおよびTOにはファイル名を指定できません。STDINまたはSTDOUTを指定してください。

※5:関数を指定する場合、言語がSQLまたはplpgsqlで実装された関数だけ指定できます。

※6:ENCODING句は指定できません。

※7:LANGUAGEに指定できる言語はSQL、internal、またはplpgsqlです。

※8:LOCATION句に指定したディレクトリは、/userdata/tblspcの配下に自動生成されるため、ユーザーが事前にディレクトリを用意する必要はありません。また、LOCATION句に指定できるパス長は958バイト以内です。

注:
  • PostgreSQLで実行可能な以下のSQL文は利用できません。

    • ALTER FOREIGN DATA WRAPPER
    • ALTER LANGUAGE
    • ALTER SYSTEM
    • CREATE FOREIGN DATA WRAPPER
    • CREATE LANGUAGE
    • DROP FOREIGN DATA WRAPPER
    • DROP LANGUAGE
    • LOAD
  • データベースサービスの並列検索の動作はPostgreSQLと同等です。

    • データベースサービスでは、製品版のEnterprise Postgresで提供されている"CPUリソースの空きチェック"機能を利用できません。

      "CPUリソースの空きチェック"機能とは、過度な並列検索によるサーバのスローダウンを抑止する機能です。