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

Tidak ada kebuntuan SQL berdasarkan desain - ada pola pengkodean?

Menulis kode deadlock-proof sangat sulit. Bahkan ketika Anda mengakses tabel dalam urutan yang sama, Anda mungkin masih menemui jalan buntu [1]. Saya menulis posting di blog saya yang menguraikan melalui beberapa pendekatan yang akan membantu Anda menghindari dan menyelesaikan situasi kebuntuan.

Jika Anda ingin memastikan dua pernyataan/transaksi tidak akan pernah menemui jalan buntu, Anda mungkin dapat mencapainya dengan mengamati kunci mana yang digunakan setiap pernyataan menggunakan sp_lock prosedur tersimpan sistem. Untuk melakukan ini, Anda harus sangat cepat atau menggunakan transaksi terbuka dengan petunjuk holdlock.

Catatan:

  1. Pernyataan SELECT apa pun yang membutuhkan lebih dari satu kunci sekaligus dapat menemui jalan buntu terhadap transaksi yang dirancang dengan cerdas yang mengambil kunci dalam urutan terbalik.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Panduan Mudah tentang Cara Menggunakan Subqueries di SQL Server

  2. SET DATEFIRST – Atur Hari Pertama dalam seminggu di SQL Server

  3. Bagaimana cara mendapatkan penanganan kebuntuan Server Sql yang efisien di C # dengan ADO?

  4. Variabel peka huruf besar/kecil di SQL Server

  5. Mendapatkan Hibernate dan SQL Server untuk bermain bagus dengan VARCHAR dan NVARCHAR