Sqlite-views
SQLite-ビュー
ビューは、関連する名前でデータベースに保存されるSQLiteステートメントに過ぎません。 実際には、事前定義されたSQLiteクエリの形式のテーブルの構成です。
ビューには、テーブルのすべての行、または1つ以上のテーブルから選択した行を含めることができます。 ビューは、作成されたSQLiteクエリに依存して1つまたは複数のテーブルから作成でき、ビューを作成します。
仮想テーブルの一種であるビューは、ユーザーがすることができます-
- ユーザーまたはユーザーのクラスが自然または直感的に見えるようにデータを構造化します。
- ユーザーが完全なテーブルではなく、限られたデータのみを表示できるように、データへのアクセスを制限します。
- レポートの生成に使用できるさまざまなテーブルのデータを要約します。
SQLiteビューは読み取り専用であるため、ビューでDELETE、INSERT、またはUPDATEステートメントを実行できない場合があります。 ただし、ビューをDELETE、INSERT、またはUPDATEしようとして起動するビューでトリガーを作成し、トリガーの本体で必要なことを行うことができます。
ビューを作成する
SQLiteビューは、 CREATE VIEW ステートメントを使用して作成されます。 SQLiteビューは、単一のテーブル、複数のテーブル、または別のビューから作成できます。
基本的なCREATE VIEW構文は次のとおりです。
CREATE [TEMP | TEMPORARY] VIEW view_name AS
SELECT column1, column2.....
FROM table_name
WHERE [condition];
通常のSQL SELECTクエリで使用するのと同様の方法で、SELECTステートメントに複数のテーブルを含めることができます。 オプションのTEMPまたはTEMPORARYキーワードが存在する場合、ビューは一時データベースに作成されます。
例
次のレコードを持つlink:/sqlite/company.sql [COMPANY]テーブルを検討してください-
ID NAME AGE ADDRESS SALARY
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
COMPANYテーブルからビューを作成する例を次に示します。 このビューは、COMPANYテーブルのいくつかの列のみを持つために使用されます。
sqlite> CREATE VIEW COMPANY_VIEW AS
SELECT ID, NAME, AGE
FROM COMPANY;
これで、実際のテーブルを照会するのと同様の方法でCOMPANY_VIEWを照会できます。 以下は例です-
sqlite> SELECT * FROM COMPANY_VIEW;
これにより、次の結果が生成されます。
ID NAME AGE
---------- ---------- ----------
1 Paul 32
2 Allen 25
3 Teddy 23
4 Mark 25
5 David 27
6 Kim 22
7 James 24
ビューの削除
ビューを削除するには、 view_name を指定してDROP VIEWステートメントを使用します。 基本的なDROP VIEW構文は次のとおりです-
sqlite> DROP VIEW view_name;
次のコマンドは、前のセクションで作成したCOMPANY_VIEWビューを削除します。
sqlite> DROP VIEW COMPANY_VIEW;