2013-05-09 94 views
0

我有三个表。 A,B和A_to_B。 A和B之间的关系是多对多的。该关系信息存储在表A_to_B中。它的结构定义如下:如何更新或插入具有多个条件的sqlite行

CREATE TABLE 
(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
identifier_from_a TEXT NOT NULL, 
identifier_from_b TEXT NOT NULL); 

每个关系都是唯一的。

我想坚持我的关系数据与每个关系的单个语句。我的问题是,如何在不插入重复项的情况下实现这一目标?

+0

你能具体谈谈什么问题,你试图解决?具体来说,这一部分对我来说不是很清楚:“坚持我的关系数据,每个关系只有一个声明”。你为什么要坚持它,除了一个单一的声明? – cdonner 2013-05-09 20:10:33

回答

0

解决方法是在create table语句中使用多列UNIQUE定义。

例如:

CREATE TABLE 
(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
identifier_from_a TEXT NOT NULL, 
identifier_from_b TEXT NOT NULL, UNIQUE (a,b) ON CONFLICT REPLACE);