2012-10-05 81 views
0

的,我想做出一個SQLite表的主鍵由兩列,其工作是這樣的:主鍵由兩列

  • 列:id1id2value
  • 多行可以共享id1
  • 多行可以共享id2
  • 但只有一個行可以共享id1id2

我讀了很多,但所有的問題,我發現告訴瞭如何使兩個獨立的主鍵,但它不是我的情況。

回答

2

是的,你可以這樣做。

sqlite> create table t (f1 integer, f2 integer); 
sqlite> create unique index i12 on t (f1, f2); 
sqlite> .schema 
CREATE TABLE t (f1 integer, f2 integer); 
CREATE UNIQUE INDEX i12 on t (f1, f2); 
sqlite> insert into t values (1,2); 
sqlite> insert into t values (1,3); 
sqlite> insert into t values (2,2); 
sqlite> insert into t values (1,2); 
Error: columns f1, f2 are not unique 

CREATE INDEX參考。

+1

+1你先到那裏:) – davek

+0

但只有秒:) – 2012-10-05 10:52:38

+0

謝謝你們倆! – jbc25