IT教育

IT教育

超電磁砲でデータベース(Union編)

今回はテーブルの結合の項目で触れられることが多い概念 UNION, INTERSECT, EXCEPT を扱う。LEVEL が 0 の人物、所属が アイテム の人物を調べてみよう。 SELECT NAME FROM STATUS WHERE...
IT教育

超電磁砲でデータベース(ビュー編)

ビューとは 複数テーブルからの問い合わせでテーブルの結合 STATUS NATURAL JOIN AFF をしばしば使って面倒だったろう。あらかじめ結合テーブルが容易出来れば便利である。これを実現するのがビュー(VIEW)である。基本的に読...
IT教育

超電磁砲でデータベース(テーブル作成編2)

はじめに 今回は外部キーがテーマなので、まずは外部キーを有効化する。また、前回定義したテーブルを利用するが、念のため一旦破棄して再び定義する。もし存在しなければエラーとなるが、それはそれで問題はない。次の命令をコピペして実行して欲しい。 P...
IT教育

超電磁砲でデータベース(テーブル作成編1)

ここまでは既存のテーブルに対して問い合わせしか行ってこなかったが、ここでテーブルを作成することを学んでみよう。 はじめに 今回扱う重要な概念の1つに外部キーがある。SQLite の初期状態では無効になっている。有効かどうかは PRAGMA ...
IT教育

超電磁砲でデータベース(副問い合わせ編2)

前回と異なる副問い合わせの活用法として、IN と EXISTS を取り扱う。 IN IN は入門編で既に出てきたが、IN ( 副問い合わせ ) の形で副問い合わせが活躍する。次の例は「初春飾利」と同じ組織に属する構成員の名前とその所属組織を...
IT教育

超電磁砲でデータベース(副問い合わせ編1)

副問い合わせ 副問い合わせとは入れ子になった問い合わせのことである。具体例で見てみよう。次の例は同じレベルの人物が登録されていない人物の名前とそのレベルを表示する。 SELECT NAME, LEVEL FROM STATUS AS A W...
IT教育

超電磁砲でデータベース(複数テーブル 実践編)

はじめに すでにテーブル STATUS は作成してあるものとする。今回はテーブル AFF を新たに追加する。AFF は NAME と TEAM の2属性からなる。AFF の一部を掲載する。 NAMETEAM御坂美琴常盤台中白井黒子常盤台中白...
IT教育

超電磁砲でデータベース(SQLite の設定)

このままでは SQLite を起動するたびに初期設定することになり手間がかかる。起動時に設定を自動読み込みする方法について調べたので、ここでまとめておく。(追記)動作確認の結果、外部キーの設定をここでしても無効でしたので本文中から削除しまし...
IT教育

超電磁砲でデータベース(複数テーブル 基礎知識編)

はじめに 複数テーブルの結合を学ぶ。動作確認のため次の2つのテーブル TEST1, TEST2を準備する。TEST1 は STATUS の簡易版、TEST2 は後に追加するテーブル AFF の簡易版である。 NAMELEVEL御坂美琴5上条...
IT教育

超電磁砲でデータベース(集合関数編)

集合関数 代表的な集合関数 COUNT を使って集合関数に慣れることから始めよう。COUNT は行数を数える関数である。関数なので引数を持つのは自然であろう。引数は列名(ここでは NAME, LEVEL など)が基本であるが、COUNT は...