Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Apakah MERGE merupakan pernyataan atom dalam SQL2008?

MERGE adalah atom yang berarti bahwa semua perubahan dilakukan atau semua perubahan dibatalkan.

Itu tidak mencegah kunci duplikat jika terjadi konkurensi tinggi. Menambahkan holdlock petunjuk akan mengatasinya.

MERGE INTO CustomerSpend WITH (HOLDLOCK) AS T 
USING ( SELECT ? AS ID, ? AS NetValue, ? AS VoidValue ) AS V 
ON T.ID = V.ID 
WHEN MATCHED THEN 
    UPDATE SET T.ID = V.ID, T.NetValue = T.NetValue + V.NetValue, T.VoidValue = T.VoidValue + V.VoidValue 
WHEN NOT MATCHED THEN 
    INSERT ( ID,NetValue,VoidValue ) VALUES ( V.ID, V.NetValue, V.VoidValue );



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lingkaran Pemicu SQL Server

  2. Bagaimana cara menulis foreach di SQL Server?

  3. Pernyataan CASE WHEN untuk klausa ORDER BY

  4. Dapatkan catatan terbaru yang diperbarui

  5. Kiat untuk Mengurangi Kompleksitas SQL Server Anda