Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jaka jest korzyść z aktualizacji zamiast usuwania, a następnie wstawiania w tej samej tabeli?

Nie jestem w 100% pewien, o co prosisz, ale strzelę w ciemno. Wykonanie DELETE, a następnie INSERT do tabeli w celu zaktualizowania informacji to bardzo zły pomysł.

Czemu? Ponieważ jeśli masz inną tabelę z kluczem obcym odwołującym się do ABC, stracisz swoje odniesienie. To znaczy, oczywiście, chyba że ustawisz PK nowego rekordu z tym samym PK co stary (usunięty) rekord. W takim przypadku, dlaczego po prostu nie wykonałeś AKTUALIZACJI?

Dodatkowo USUWANIE, a następnie WSTAWIANIE to dwie operacje, podczas gdy AKTUALIZACJA to jedna, co sprawia, że ​​USUWANIE i WSTAWIANIE zajmują (teoretycznie) więcej czasu.

Jest też czynnik łatwości użytkowania. Jeśli usuniesz, a następnie wstawisz, musisz ręcznie śledzić wartość każdej kolumny. Jeśli UPDATE, musisz tylko wiedzieć, co chcesz zmienić.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak ustawić początkowy rozmiar pliku bazy danych i wzrost plików w projekcie bazy danych?

  2. Zmienna tabeli słaba wydajność podczas wstawiania w procedurze składowanej programu SQL Server

  3. Usuń bazę danych, ale nie usuwaj *.mdf / *.ldf

  4. Rekord tabeli nadrzędny podrzędny — budowanie zapytania SQL

  5. Jak połączyć GROUP BY i ROW_NUMBER?