2015-06-16 2 views
0

У меня есть таблица базы данных SQLite, определяемая тремя основными ключами: Foo, Bar и Charlie.Как удалить строки DB для ряда частичных ключей?

У меня также есть список частичных ключей - пары Foo, Bar.

Я хотел бы удалить все строки в таблице базы данных, которые соответствуют частичному ключу. Я понимаю и предполагаю, что частичный ключ может соответствовать нескольким строкам и в каждом случае нужно, чтобы каждое частичное совпадение было удалено.

Если бы я использовал список только один ключ, я мог бы сделать что-то эффект:

"Delete from TABLENAME where FOO IN ('" + String.Join("','", fooList) + "')"; 

Если я использую одного значение в и частичный ключ, Я мог бы сделать что-то эффект:

"Delete from TABLENAME where FOO = <foo_value> AND BAR = <bar_value>"; 

есть ли какой-нибудь способ совместить синтаксис IN с список нескольких записей с частичной записью?

+0

ли youhave этот список Фоос и баров в переменных или в другой таблице базы данных? –

+0

@StefanSteinegger Variables; A C# List

ответ

1

Я не думаю, что вы можете использовать синтаксис с несколькими столбцами

Delete from TABLENAME 
    where (FOO = <foo_value1> AND BAR = <bar_value1>) 
    or (FOO = <foo_value2> AND BAR = <bar_value2>); 
+0

Ну, мне не нужно * использовать 'IN', просто ищет способ справиться с удалением подобным образом - и похоже, что он будет делать то, что мне нужно! –

+0

Если это ответ, вы можете указать с помощью проверки – Paparazzi

+0

Хорошо известно, что нужно просто подождать таймера. Благодаря! –