前回はテーブルに使用するフィールドの説明をしましたので、今回はビューとトリガーの詳細な説明をします。
ビューを使うとSELECTクエリを格納できます。同じクエリを何度も使う場合はビューを活用することを考えるとよいでしょう。今回の場合、リンクを簡単に管理するために、アルファベット順に並べ、各アルファベット文字ごとにハイパーリンクを作成することにします。
図1:Webサイトのリンク(再掲) (画像をクリックすると別ウィンドウに拡大図を表示します)
そのために、リスト2の通りalphabetビューを作成します。こうすることで、図1のように各行にリンクを表示できるようになります。
同じSQL文を繰り返すのではなく、単に"SELECT * FROM alphabet"とFROM句でビューを指定することで、ビューで作成したデータを取り出すことができます。
また、リスト2にはspecific_linkビューのコードも掲載しています。これはトリガーを使うことで、更新ができるようにしたビューです。
リスト2
CREATE VIEW alphabet AS
SELECT DISTINCT UPPER(SUBSTR(linktext,1,1)) AS letter
FROM tblresources
WHERE reviewed = 1 ORDER BY letter;
CREATE VIEW specific_link AS
SELECT id, url,
(precedingcopy || ' ' || linktext || ' ' ||
followingcopy)
AS copy
FROM tblresources;
SQLiteでは、多くの文字列操作の関数を定義しています。関数や演算子に関しては、http://www.sqlite.org/lang_expr.htmlを参照してください。
|