CREATE VIEW
A view is a virtual table that takes out a part of a table or joins necessary items
from multiple tables to make it look like a single table.
There are three advantages to using views:
①Improve usability
You pick out only the columns you need from the table, and you read the data
easier. In addition, you can join multiple tables to create a single view and
so it is possible to reduce the number of times to refer the data.
②Improve security
You can limit the range of data usage by giving permission to access the view.
For example, you can disable data updates from the view, or if you don't want
to expose all the data in the table, you can expose only the information except
the secret information such as passwords.
③Increase independence from data
If the definition of the table referenced by the view changes, you don't have to
recreate the view.
The SQL to create the view is as follows.
CREATE VIEW ViewName
AS SELECT Item, Item, ・・・ FROM TableName
For example, the SQL to take out the name and language from the "Grade"
table and define a view called "Language Grade" table is as bellows.
CREATE VIEW LanguageGrade
AS SELECT Name, Language FROM Grade
--------------------------------------------------------------------------------------------------
[Japanese]
CREATE VIEWについて
ビュー(仮想表)は、テーブルの一部分を取り出したもの、または複数の
テーブルから必要な項目を結合して、一つのテーブルであるかのように見せる仮想のテーブルです。ビューを利用する利点は、次の3点です。
①使いやすさの向上
テーブルから必要な列だけを取り出すので、データが見やすくなります。
さらに、複数のテーブルを結合して1つのビューを作れるので、データの
参照回数を減らすことができます。
②データの利用範囲を制限できる(セキュリティ向上)
ビューに対するアクセス権限を与えることで、利用範囲を制限できます。
例えば、ビューからのデータ更新を不可にしたり、テーブルの全データを
公開させたくないときに、パスワードなどの秘密情報を除いた情報のみを
ビューで公開することもできます。
③データからの独立性の向上
ビューの元となるテーブルの定義が変更(例えば、カラムの桁数が変わる
など)されても、ビューを作り直す必要はありません。
ビューを作成するSQLは、以下の通りです。
CREATE VIEW ビュー名
AS SELECT 項目名, 項目名, ・・・ FROM テーブル名
(例)「成績」テーブルから氏名と国語を取り出して「国語成績」テーブル
というビューを定義する場合のSQL
CREATE VIEW 国語成績
AS SELECT 氏名, 国語 FROM 成績