web-dev-qa-db-ja.com

SQLiteで外部キーを作成できません

私はこのコードをsqliteで実行しようとしています:

sqlite> CREATE TABLE test(id integer primary key AUTOINCREMENT, page varchar(10), dp_record_id integer, foreign key (webserver_id) REFERENCES target_dp(id));

しかし、次のエラーメッセージが表示されます。

エラー:外部キー定義の列「webserver_id」が不明です

これが親テーブルです:

sqlite> .schema
CREATE TABLE target_dp(id integer primary key AUTOINCREMENT, server_name varchar(255), location_code varchar(10), active bit(1));
sqlite> 

構文エラーの場所がわかりません。よろしくお願いします。

2
dot

TESTテーブルにwebserver_id列がありません。

CREATE TABLE test(id integer primary key AUTOINCREMENT
                , page varchar(10)
                , dp_record_id integer
                , webserver_id integer
                , foreign key (webserver_id) REFERENCES target_dp(id));

うまく動作します。

3
Chris Sinclair