InterBase クイック スタート:Part II - SQL の概要
InterBase クイック スタート:Part II - データ定義 へ戻る
SQL 文は、2 つの主なカテゴリにわけられます:データ定義言語(DDL、Data Definition Language)、および、データ操作言語(DML、Data Manipulation Language )です。
- DDL 文 は、データを保持する構造を定義、変更、および削除します。 これらには、データベース自身、テーブル、そして、ドメイン、インデックス、トリガ、ストアド プロシージャ、ロール、シャドーといった、データベースの一部を担う他の要素も含まれています。これら皆まとめて、DDL 文で定義されるオブジェクトは、メタデータと呼ばれています。DDL 文は、キーワード
CREATE
、ALTER
、およびDROP
から始まります。たとえば、CREATE TABLE
ではテーブルを定義し、ALTER TABLE
は既存のテーブルを変更し、DROP TABLE
はテーブルを削除します。
- DML 文は、これらデータ構造内のデータを操作します。 基本的な 4 つの DML 文は、
INSERT
、UPDATE
、DELETE
、およびSELECT
です。INSERT
は、テーブルにデータを追加し、UPDATE
は既存のデータを変更し、DELETE
はデータを削除します。SELECT
文は、データベースから情報を抽出、または問い合わせをします。 これが、すべての SQL 文の中で最も重要で最も複雑です。なぜなら、この方法によって、最新の注意を払って保管したすべての情報へのアクセスが手に入るからです。
クイック スタートを通じて、TUTORIAL データベースのデータ構造を作成するために、次のような複数の DDL 文を利用します: CREATE DOMAIN
、CREATE TABLE
、ALTER TABLE
、CREATE VIEW
、CREATE INDEX
。
目次
IBConsole を使用した SQL の実行
IBConsole には、対話型 SQL ウィンドウ が含まれており、ここでは DDL および DML 文を実行することができます。
SQL 文領域に SQL 文を入力する
SQL 文領域(上部右の編集ウィンドウ)で SQL 文を打ち込むと、SQL 文を入力することができます。
- 文を、文末記号(セミコロンなど)で終わらせる必要はありません。 しかし、文末記号自体は禁止されていませんので、あったとしても問題ではありません。 たとえば、スクリプトから文をコピー&貼り付けして、文末記号を削除せず、それらを実行することができます。
- InterBase SQL 文は、大文字小文字を区別しません。 希望するなら、すべての SQL 文を小文字で入力することも可能です。
- 引用符内のものは、いずれも大文字小文字が区別され、表示されるままに入力されなければなりません。
- InterBase は、文内の改行は無視します。 ユーザーの便宜のためにこうなっています。
- スペースやタブを利用して行にインデントをつけて、より読みやすくすることができます。 InterBase は、スペースやタブを無視します。
- 各文は、次の文を入力する前に、実行しなければなりません。
文を実行する
文を実行するには、次のいずれかを行います:
SQL スクリプトを読み込む
スクリプトを 対話型 SQL ウィンドウに読み込むには、次のいずれかを行います:
- クエリ > スクリプトの読み込み を選択します。
- スクリプト ファイルの位置へナビゲートし、
<filename>.SQL
を開きます。
作業をコミットする
作業をコミットするまで、そのトランザクションはアクティブであると言えます。 アクティブ トランザクションに関連づけられている作業は、他のユーザーからはまだ見えません。 たとえば、通常コミットする前に、関連項目のグループすべての入力を終わらせたいと思うでしょう。そうすれば、誤解を招くような中途半端な状態が、他のユーザーに表示されずに済むからです。 コミットすると、そのトランザクションがコミット済みの状態に変更し、トランザクション内で行った作業が他者からも見えるようになります。 ただし、メタデータを作成した場合は、通常、DDL 文が完了した段階で、各データ構造をコミットしたいと思うでしょう。
InterBase は自動コミット機能を提供しており、これにより、どの DDL 文もそれを実行した際に自動的にコミットさせることができます。 この自動コミット機能は、INSERT
、UPDATE
、DELETE
、SELECT
といった、DML 文には適用されません。
自動コミット機能は、InterBase でデフォルトで有効になっています。
トランザクションをコミットするには(たとえば、DML 文を入力した後など)、次のいずれかを行います:
COMMIT
F9
キーを使用。
ロールバックを実行する
ロールバックを実行するには、次のいずれかを行います:
ROLLBACK
F12
キーを使用。
セッションの設定をチェックする
自動コミット機能の状態や他のセッション設定をチェックするには、次の手順に従います: