SQL - SQLite - 複数テーブルのデータベース設計 - 現行テーブルからの脱却 - 外部キーを使ったテーブルの作成
Head First SQL ―頭とからだで覚えるSQLの基本、 Lynn Beighley(著)、 佐藤 直生(監訳)、 松永 多苗子(翻訳)、 オライリージャパンの 7章(複数テーブルのデータベース設計 - 現行テーブルからの脱却)、p.307(エクササイズ)の解答を求めてみる。
sample6.sql
pragma foreign_keys = on;
create table interests (
int_id integer primary key autoincrement,
interest text not null,
contact_id integer not null,
constraint my_contacts_contact_id_fk,
foreign key (contact_id) references my_contacts (contact_id)
);
入出力結果(Terminal, Zsh)
% sqlite3 gregs_list.db < sample6.sql
% sqlite3 gregs_list.db
SQLite version 3.50.1 2025-06-06 14:52:32
Enter ".help" for usage hints.
sqlite> pragma table_info(interests);
0|int_id|INTEGER|0||1
1|interest|TEXT|1||0
2|contact_id|INTEGER|1||0
sqlite> .quit
%