Ваши имена элементов данных и примеры данных мне не знакомы, поэтому я их поменяю:)
Допустим, первичный ключ для таблицы Orders
является составной частью (product_name, customer_name)
. Есть строки для следующих предложений:
Colm orders freezer
Pete orders toaster
Ravi orders freezer
Ravi orders toaster
Требование: обновить, чтобы заменить все заказы на морозильники на заказы для тостеров, но если это вызывает нарушение PK, удалите нарушающие строки.
Colm orders freezer -> (row is altered to) Colm ordered toaster
Pete orders toaster -> (row is unaffected) Pete ordered toaster
Ravi orders freezer -> (row is deleted)
Ravi orders toaster -> (row is deleted)
Таким образом:
- Удалите строки, в которых у клиента есть заказы на и морозильник и тостер.
- Измените строки, в которых у клиента есть заказ на морозильник, чтобы он стал заказом на тостер.
p.s. Это звучит как довольно необычное обновление, поэтому я призываю вас дважды проверить спецификацию у дизайнера, чтобы убедиться, что их намерения ясны.