2

テーブルがあるとします:

Table A:

Id Name     Movie   Comment 

1  Foo     Bar  anything
2  Foo     Bar  anything

ここで、ユーザーが Foo と Bar を 2 回挿入できないようにしたいのですが、Foo と foobar を挿入することは許可されています。この重複を防ぐための 1 つの解決策は、このステートメントを追加することでしたALTER TABLE table ADD UNIQUE KEY(Name , Movie).。これはおそらく sqlite ではなく sql 用でした。sqlite3 の python で同じコマンドをcur.execute("ALTER TABLE ADD UNIQUE KEY(Name,Movie)"). エラー sqlite3.operationalerror: Near "unique" syntax error が表示されました。テーブル A の作成中にできることはありますか、それとも私の sqlite クエリに誤りがありますか。

助けていただければ幸いです。

4

1 に答える 1

1
CREATE UNIQUE INDEX IDX_Movies ON table(Name, Movie)

これは標準 SQL であり、http://sqlite.org/lang_createindex.htmlで文書化されています。(SQLite のオンライン ドキュメントはかなり包括的です)

于 2012-11-06T04:08:58.607 に答える