Firebird SQLリファレンス
Firebird で使用できる SQL のリファレンス(日本語訳)です。現在での対応バージョンは1.5.1となっています。
公開されている、InterBase6 SQL Statement and Function Reference
の翻訳をベースに、リリースノートを参考に各バージョンで追加された機能に関して
修正・追加を行ってる場合もあります。
内容に疑問がある場合や、未訳の構文に関しては、基となった資料を参照して下さい。
Firebird の SQL は、発行方法などにより以下のような種類があります。
種類 | 説明 |
SQL | 埋め込みSQL向け。プログラムソースに直接埋め込むためのもので、専用のプリプロセッサ(gpre)によりコンパイラ向けの変換を行います。 |
DSQL | 動的SQLです。プログラムにより動的に生成するSQL文で使用できます。 |
PSQL | ストアドプロシージャやトリガの記述で使用するSQLです。仕様・詳細に関してはCREATE PROCEDUREのプロシージャ・トリガ記述言語を参照して下さい。 |
isql | isqlで取り扱えるSQLです。 |
随時追加予定です。また、このページは自由に追加、修正が可能ですので、有志による
内容の充実もどうぞお願いします。
データ型、キャラクタセット
Firebirdで使用できるデータ型などに関する情報は、キャラクタセット・データ型・権限を参照して下さい。
SQL文:目的別インデックス
- データベース作成・削除
- ALTER DATABASE : 既存データベースに二次ファイルを追加
- CREATE DATABASE : 新規データベースの作成
- DROP DATABASE : データベースの削除
- 既存データベース接続関係
- CONNECT : データベースに接続
- DISCONNECT : データベースから切断(埋め込みSQL向け)
- SET DATABASE : データベースハンドルの宣言(埋め込みSQL向け)
- SET NAMES : 接続時のキャラクタセット設定
- 特権関係
- CREATE ROLE : ロールを作成
- DROP ROLE : ロールを削除
- GRANT : 特権の付与、ロールにユーザーを追加
- REVOKE : 特権の削除、ロールからユーザーを削除
- トランザクション関係
- COMMIT : 変更を反映してトランザクションを終了
- RELEASE SAVEPOINT : 指定セーブポイントの削除
- ROLLBACK : 変更を取り消してトランザクションを終了
- SAVEPOINT : セーブポイントの作成
- SET TRANSACTION : トランザクションの開始
- テーブル(表)操作関係
- ALTER TABLE : テーブル定義の変更
- CREATE TABLE : テーブルの作成
- DECLARE TABLE : テーブル作成の準備
- DROP TABLE : テーブルの削除
- RECREATE TABLE : テーブルの再作成
- インデックス関係
- ALTER INDEX : インデックスの活性・不活性化
- CREATE INDEX : インデックスの作成
- DROP INDEX : インデックスの削除
- SET STATISTICS : インデックスの集計
- ドメイン関係
- ALTER DOMAIN : ドメイン定義の変更
- CREATE DOMAIN : ドメインの作成
- DROP DOMAIN : ドメインの削除
- ビュー関係
- CREATE VIEW : ビューの作成
- DROP VIEW : ビューの削除
- RECREATE VIEW : ビューの再作成
- ストアドプロシージャ関係
- ALTER PROCEDURE : ストアドプロシージャの変更
- CREATE PROCEDURE : ストアドプロシージャの作成
- DROP PROCEDURE : ストアドプロシージャの削除
- EXECUTE PROCEDURE : ストアドプロシージャの実行
- RECREATE PROCEDURE : ストアドプロシージャの再作成
- トリガ関係
- ALTER TRIGGER : トリガの変更
- CREATE TRIGGER : トリガの作成
- DROP TRIGGER : トリガの削除
- ユーザー定義例外関係
- ALTER EXCEPTION : 例外の変更
- CREATE EXCEPTION : 例外の作成
- DROP EXCEPTION : 例外の削除
- ユーザー定義例外は、ストアドプロシージャやトリガで発生させます。 トリガで発生させることにより、独自に複雑な制約を作成することも出来ます。
- データベースシャドウ関係
- CREATE SHADOW : データベースのシャドウを作成
- DROP SHADOW : データベースのシャドウを削除
- 障害発生時のデータベースシャドウへの切り替えは、gfixコマンドで行います。 詳細に関してはCREATE SHADOWに補足してありますので そちらを参照して下さい。
- ジェネレータ関係
- CREATE GENERATOR : ジェネレータの作成
- DROP GENERATOR : ジェネレータの削除
- SET GENERETOR : ジェネレータへの値の設定
- イベントアラータ関係
- EVENT INIT : イベント処理の初期化
- EVENT WAIT : イベント発生の待ち合わせ
- イベントのポストは、ストアドプロシージャまたはトリガで行います。
- カーソル関係
- CLOSE : カーソルのクローズ
- CLOSE (BLOB) : BLOBカーソルのクローズ
- DECLARE CURSOR : カーソルの宣言
- DECLARE CURSOR (BLOB) : BLOBカーソルのクローズ
- FETCH : カーソルからの1行取得
- FETCH (BLOB) : BLOBカーソルからのデータ取得
- OPEN : カーソルのオープン
- OPEN (BLOB) : BLOBカーソルのオープン
- 動的SQL(DSQL)関係
- DECLARE STATEMENT : 動的SQLの宣言
- DESCRIBE : データ受け渡しの指定
- EXECUTE : 準備された動的SQLの実行
- EXECUTE IMMEDIATE : 動的SQLの直接実行
- PREPARE : 動的SQL実行のための準備
- ホスト言語変数宣言関係
- BASED ON : 列定義をベースとしたホスト言語変数宣言
- BEGIN DECLARE SECTION : 宣言セクションの開始
- END DECLARE SECTION : 宣言セクションの終了
- エラー処理関係
- WHENEVER : エラー・警告のトラップ指定
- ユーザー定義関数(UDF)およびBLOBフィルタ関係
- DECLARE EXTERNAL FUNCTION : UDFの宣言
- DECLARE FILTER : BLOBフィルタの宣言
- DROP EXTERNAL FUNCTION : UDFの削除
- DROP FILTER : BLOBフィルタの削除
- その他
- SET SQL DIALECT : SQL Dialect の設定
- SHOW SQL DIALECT : 現在の SQL Dialect 設定/値の取得
組込み関数
Firebirdは、リソース節約のためか、高度な機能は標準UDFやユーザーのUDFでやりましょうという設計思想のようで、標準の組込み関数は少なめです。また、ほとんどが標準SQL準拠となっています。
演算子と標準UDF
SQLなどのエラーについて
SQLやデータベースエンジンのエラーに関しては、Language
Reference の Error Codes and Messages を参照して下さい。
ダウンロードはこちら(のInterBase6.0 Language References)です。