2013-05-09 2 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

ответ

0

Решение заключается в использовании определения UNIQUE с несколькими столбцами в инструкции create table.

Например:

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); 
Смежные вопросы