スライド 1
スライド 2: 第2回のアウトライン
スライド 3: テーブルの例
スライド 4: テーブル定義
スライド 5: 属性のデータ型
スライド 6: 属性のデータ型
スライド 7: 主キー
スライド 8: リレーショナルデータベースの NULL
スライド 9: テーブル定義と一貫性制約
スライド 10
スライド 11: 新しいレコードの挿入
スライド 12: 問い合わせ(クエリ)の仕組み
スライド 13: レコードの挿入,SQL 問い合わせ
スライド 14: SQL 問い合わせ
スライド 15: SQL を用いたテーブルの削除
スライド 16: ここで使用した SQL
1
si
-2.
テーブル定義,
データ型,主キー,
SQL
問い合わせ
金子邦彦
SQL
入門演習(
SQLite
3
を
利用)
(全3回)
SQL
の入門者へ
https://www
.kkaneko.jp/d
e/sqlite3/index.ht
ml
第2回のアウトライン
•
テーブル
•
テーブル定義
•
データ型
•
主キー
•
NULL
•
テーブルへのレコードの挿入
•
SQL
問い合わせ
2
テーブルの例
3
テーブル名
: products
id
name
price
1
orange
50
2
apple
100
3
melon
500
テーブル定義
4
テーブル定義
では,
・
テーブル名
・
属性
の
属性名
・
属性
の
データ型
など
を設定して,
テーブル
を
定義
する
CREA
TE
T
ABLE
pro
ducts (
id
INTEGER
PRIMAR
Y
KEY
NOT
NULL
,
name
TEXT NOT NULL
,
price
REAL
);
テーブル名
: products
id
name
price
1
orange
50
2
apple
100
3
melon
500
属性のデータ型
5
テーブル
の本体
属性名
それぞれの
属性
の
データ型
整数
長いテキスト
浮動小数点数
←
SQL
のキーワード
INTEGER
TEXT
REAL
id
name
price
1
orange
50
2
apple
100
3
melon
500
属性のデータ型
6
Access
の主なデー
タ型
SQL
のキーワー
ド
NULL
空値
短いテキスト
CHAR
文字列
長いテキスト
TEXT
文字列
数値
INTEGER,
REAL
整数や浮動小数
点数
日付/時刻
DA
TETIME
日付や時刻など
Y
es
/
No
BIT
, BOOL
ブール値
※
整数
は
INTEGER
,
浮動小数点数
(小数付きの数)
は
REAL
※
短いテキスト
は
半角
255
文字分
までが目安
それ以上になる可能性があるときは
長いテキスト
id
name
price
1
orange
50
2
apple
100
3
melon
500
主キー
7
通し番号,学生番号のように,
1つのテーブルの中で
同じ値が2回以上出ない
と前もって分かっている
属性
主キー
リレーショナルデータベースの
NULL
•
NULL
は「ヌル」あるいは「ナル」と読む
•
リレーショナルデータベース
で
NULL
は,次の場
合に使う
1.
未定,未知,不明(
分からない場合)
2.
非存在
(もともと存在しない場合)
8
テーブル定義と一貫性制約
9
【
SQL
プログラム】
id:
主キー
(PRIMAR
Y
KEY)
,
NULL
になることはない
(NOT
NULL)
name:
NULL
になることはない
(NOT
NULL)
テーブルの制約について記述.
データベースの一貫性を維持するのに役立つ.
CREA
TE
T
ABLE
prod
ucts (
id
INTEGE
R
PRIMAR
Y
KEY
NOT
NULL
,
name
TEXT
NOT NULL
,
price
REAL
);
テーブル定義
products
10
【
SQL
プログラム】
CREA
TE
T
ABLE
pro
ducts (
id
INTEGER
PRIMAR
Y
KEY
NOT
NULL
,
name
TEXT NOT
NULL
,
price
REAL
);
新しいレコードの挿入
11
テーブル名
値の並び.半角のカンマ「
,
」で区切る
※
文字列は半角の「
'
」で囲む
INSERT INT
O
products
V
ALUES
(
4, 'apple',
150
);
id
name
price
1
orange
50
2
apple
100
3
melon
500
id
name
price
1
orange
50
2
apple
100
3
melon
500
4
apple
150
テーブル名
: products
問い合わせ(クエリ)の仕組み
12
データの種類ごとに分かれ
た,たくさんの
テーブル
問い合わせ
(クエリ)
の
コマンド
問い合わせ(クエリ)
の
結果
は,
テーブル
形式の
データ
リレーショナル
データベースシステム
INSERT INT
O
pr
oducts
V
ALUES
( 1, 'ora
nge', 50
);
INSERT INT
O
produc
ts
V
ALUES
(
2, 'apple', 100
);
INSERT INT
O
pr
oducts
V
ALUES
( 3, 'melon
', 50
0 );
SELECT
* FROM
produc
ts;
レコードの挿入,
SQL
問い合わせ
13
【
SQL
プログラム
】
SELE
CT * FROM
produc
ts
WHERE
price > 90
;
SQL
問い合わせ
14
【
SQL
プログラム
】
SQL
を用いたテーブルの削除
15
drop table
prod
ucts;
【
SQL
プログラム
】
テーブル
products
の削除
ここで使用した
SQL
•
テーブル定義
CREA
TE
T
ABLE
...
•
問い合わせ
SELECT
...
FROM
...
SELE
CT
...
FROM
...
WHERE
...
•
レコードの挿入
INSERT INT
O
...
16