@kyanny's blog

自分の不名誉になるような考えを最初に大胆に表明することは、自立への第一歩となる - ニーチェ ドイツ哲学者

SQLite: 複合主キーを使う

データベース操作ライブラリ等を使って CREATE TABLE 文を自動生成してる場合など、まれに手作業で調整する場合。

テーブル作成後に ALTER TABLE で変更できないので、 DROP TABLE してから CREATE TABLE する。

BEGIN;
DROP TABLE "polls_choice";
CREATE TABLE "polls_choice" ("question_id" integer NOT NULL, "choice_text" varchar(200) NOT NULL, "votes" integer NOT NULL, PRIMARY KEY ("question_id", "votes"));
COMMIT;

stackoverflow.com

検索キーワード: multi column primary key, compound primary key, composed primary key