構文が許可されていないため、構文エラーが発生します。あなたの例から、スキーマはおそらく次のようになっていると思います。
create table data_table (uid integer primary key autoincrement.
label string);
その場合はをprimary key
意味しunique
ます。ただし、の自動生成を許可uid
しているので、その値が何であるかは気にしないので、重複したくないだけですlabel
。その場合、実際にはlabel
一意であることが気になります。そのように伝えてください。
create table data_table (uid integer primary key autoincrement,
label string unique on conflict fail);
その後、期待どおりに機能します。
sqlite> insert into data_table (label) values ("uk");
sqlite> insert into data_table (label) values ("uk");
Error: column label is not unique
sqlite> select * from data_table;
1|uk
ちなみに、名前、、、data_table
およびuid
がlabel
この質問の目的の名前の例ではない場合、これらはひどく有益ではないため、より意味のある名前を使用する必要があります。