Sequel Proで複数の列を主キー(プライマリキー)として設定する
Sequel ProのGUI操作では、複数の列を主キーとして設定できないらしい。
方法は下記の2つ。
- CREATE TABLE実行時に指定
- 既存のテーブルにALTER TABLEで指定
CREATE TABLE実行時に指定
CREATE TABLE実行時にPRIMARY KEYを設定する。
CREATE TABLE tbl_test ( id1 INTEGER NOT NULL, id2 INTEGER NOT NULL, PRIMARY KEY(id1, id2) );
既存のテーブルにALTER TABLEで指定
既存のインデックスの設定は削除しておく。上記のインデックス設定を削除しないまま、下記SQLを実行するとMultiple primary key defined
というエラーが出てしまう。
既存のテーブルに合わせて、下記のようなSQL文を書いて実行する。
ALTER TABLE tbl_test ADD CONSTRAINT PRIMARY KEY(id1, id2);
結果
1、2どちらとも、下記の画面のようなPRIMARY KEYが設定される。
その他
各列にインデックスの設定をしたい場合、キーを設定したい列を選択後、インデックス設定欄の「+」ボタンをクリックする。
キーの種類を選択できるダイアログが表示される。