2016-11-06 6 views
0

friendships」をサポートするデータベースを作成したいと思います。暗黙のROWIDに外部キーを使用できますか?

私が作ってみた(それが動作するかどうかを正確に知っていない):

users: 
    "create table if not exists user (
    name text not null, 
    password text not null 
)" 
friendships: 
    "create table if not exists friendship (
    user1 int not null, 
    user2 int not null, 
    foreign key(user1) references user(rowid), 
    foreign key(user2) references user(rowid) 
)" 

が、この作品はウィル?

+1

試したときに何が起こりましたか? –

答えて

0

documentationは言う:

キー親が外部キー制約が参照する親テーブルの列または列の集合です。これは通常、親テーブルの主キーですが、常にそうであるとは限りません。親キーは、ROWIDではなく、親表の名前付き列または列でなければなりません。

隠さrowid値はどのような場合には、親キー明示的に指定の列を作るために良いでしょうので、(例えば、VACUUMの後に)その値を維持することは保証されませんのでご注意ください。

関連する問題