У меня есть две таблицы, каждая из которых имеет идентификационный номер, которые связаны между собой (AllUsers
и AllProfiles
).Когда пользователь нажимает кнопку, я хочу, чтобы таблица AllUsers
проверила наличие идентификаторов, которых нет в таблице AllProfiles
, и удалила их.Я новичок в SQLCE и взломал это вместе.Проблема в том, что он удаляет всю таблицу целиком.Почему?
DELETE FROM AllUsers
WHERE EXISTS
(SELECT ID
FROM AllUsers
WHERE (ID NOT IN
(SELECT ID
FROM AllProfiles)))
Кроме того, это эффективный способ массового удаления тысяч записей?Я попробовал DeleteAllOnSubmit Линка, но это было слишком медленно.Я надеюсь, что вышеизложенное сравнивает две таблицы напрямую, это должно быть эффективно.(Я не хочу использовать каскадирование, так как мне нужен контроль над каждой таблицей отдельно)
EDIT - оператор SELECT
корректно возвращает отсутствующие идентификаторы, поэтому с частью DELETE FROM AllUsers WHERE EXISTS
что-то не так.*