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

SET NOCOUNT PADA penggunaan

Oke sekarang saya sudah melakukan riset, ini kesepakatannya:

Dalam protokol TDS, SET NOCOUNT ON hanya menyimpan 9-byte per query sedangkan teks "SET NOCOUNT ON" itu sendiri adalah 14 byte kekalahan. Dulu saya berpikir bahwa 123 row(s) affected dikembalikan dari server dalam teks biasa dalam paket jaringan terpisah tetapi bukan itu masalahnya. Sebenarnya ini adalah struktur kecil yang disebut DONE_IN_PROC tertanam dalam respon. Ini bukan paket jaringan terpisah sehingga tidak ada perjalanan pulang pergi yang terbuang.

Saya pikir Anda dapat tetap berpegang pada perilaku penghitungan default hampir selalu tanpa mengkhawatirkan kinerjanya. Namun, ada beberapa kasus, di mana menghitung jumlah baris sebelumnya akan memengaruhi kinerja, seperti kursor maju saja. Dalam hal ini NOCOUNT mungkin menjadi kebutuhan. Selain itu, sama sekali tidak perlu mengikuti moto "gunakan NOCOUNT sedapat mungkin".

Berikut adalah analisis yang sangat rinci tentang tidak pentingnya SET NOCOUNT pengaturan:http://daleburnett.com/2014/01/everything-ever-wanted-know-set-nocount/



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa yang dimaksud dengan program atau skrip baris perintah sederhana untuk membuat cadangan database server SQL?

  2. Cara Membuat Prosedur Tersimpan di SQL Server

  3. SQL Server Setara dengan Sleep():Pernyataan WAITFOR

  4. SQL Server 2008 tidak dapat masuk dengan pengguna yang baru dibuat

  5. Pemeriksaan Cadangan SQL Server