Mysql
 sql >> база данни >  >> RDS >> Mysql

Какви са практическите разлики между `ЗАМЕНИ` и `ВМЪКВАНЕ... ПРИ АКТУАЛИЗИРАНЕ НА ДУБЛИКАТ КЛЮЧ` в MySQL?

REPLACE вътрешно извършва изтриване и след това вмъкване. Това може да причини проблеми, ако имате ограничение за външен ключ, насочено към този ред. В тази ситуация REPLACE може да се провали или по-лошо:ако вашият външен ключ е настроен за каскадно изтриване, REPLACE ще доведе до изтриване на редове от други таблици. Това може да се случи, въпреки че ограничението е било изпълнено както преди, така и след REPLACE операция.

Използване на INSERT ... ON DUPLICATE KEY UPDATE избягва този проблем и затова се предпочита.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Примери за MySQL REGEXP

  2. Пинкод база данни на Индия със скрипт за намиране на местоположение в php и jquery

  3. Как да създадете връзка в MySQL Workbench

  4. Работа с тригери в база данни на MySQL - урок

  5. MySQL Вмъкване в от една база данни в друга