У меня есть главная таблица, содержащая пользователей, которые связаны с различными другими таблицами.Иногда в этой основной таблице есть дубликаты из-за плохих импортированных данных, и я хотел бы объединить их.См. Следующие таблицы.
Таблица: пользователи
UserID Username FirstName LastName
1 Main John Doe
2 Duplicate John Doo
Таблица: записи1
RecordID RecordName CreatedUserID UpdatedUserID
1 Test record 1 1 2
2 Test record 2 2 null
3 Test record 3 2 null
CreatedUserID и updatedUserID являются внешними столбцами Users.UserID.
ИтакВ настоящее время, если я хочу объединить пользователей 1 и 2, я бы сделал это с помощью следующих операторов SQL:
UPDATE Records1 SET UpdatedUserID = 1 WHERE UpdatedUserID = 2
UPDATE Records1 SET CreatedUserID = 1 WHERE CreatedUserID = 2
DELETE FROM Users WHERE UserID = 2
Это всего лишь примерное подмножество, но на самом деле существует множество таблиц связанных записей, для которых ядолжны добавить дополнительные операторы SQL-Update.
Я знаю, что, возможно, мне здесь повезло, но, возможно, есть способ выполнить вышесказанное (обновить все связанные таблицы в пакете и удалить «дублирующую» запись) вместо обновления каждого внешнего поля икаждая связанная таблица вручную.Таблица users - это, по сути, базовая таблица, которая связывается со всеми остальными таблицами, поэтому создание отдельных операторов для каждой таблицы довольно громоздко, поэтому, если имеется ярлык, это было бы здорово.