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

Mengapa dianggap praktik buruk menggunakan kursor di SQL Server?

Karena kursor mengambil memori dan membuat kunci.

Apa yang sebenarnya Anda lakukan adalah mencoba untuk memaksa teknologi berbasis set menjadi fungsionalitas berbasis non-set. Dan, sejujurnya, saya harus menunjukkan bahwa kursor lakukan memiliki kegunaan, tetapi mereka tidak disukai karena banyak orang yang tidak terbiasa menggunakan solusi berbasis himpunan menggunakan kursor alih-alih mencari tahu solusi berbasis himpunan.

Tetapi, ketika Anda membuka kursor, pada dasarnya Anda memuat baris-baris itu ke dalam memori dan menguncinya, menciptakan blok-blok potensial. Kemudian, saat Anda menggilir kursor, Anda membuat perubahan pada tabel lain dan tetap menjaga semua memori dan kunci kursor tetap terbuka.

Semuanya berpotensi menyebabkan masalah kinerja bagi pengguna lain.

Jadi, sebagai aturan umum, kursor tidak disukai. Apalagi jika itu adalah solusi pertama yang didapat dalam memecahkan masalah.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengonversi Nilai Tanggal/Waktu menjadi String di SQL Server menggunakan CONVERT()

  2. Cara Memperbaiki "Fungsi partisi terkait menghasilkan lebih banyak partisi daripada grup file yang disebutkan dalam skema" Msg 7707 di SQL Server

  3. cara menulis fungsi angka ke kata di sql server

  4. SQL Server Express vs express localdb

  5. Konversikan UTC Milidetik ke DATETIME di server SQL