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

Rekursi maksimum 100 telah habis sebelum kesalahan penyelesaian pernyataan ditampilkan di SQL Query

Anda dapat membatasi jumlah level rekursi menggunakan MAXRECURSION petunjuk opsi seperti ini:OPTION (MAXRECURSION 0); di mana nilai (antara 0 dan 32767) menentukan jumlah level rekursi, 0 yang berarti tak terbatas.

Dari dokumentasi untuk CTE:

Dan dokumentasi untuk petunjuk kueri menyatakan:

Untuk menggunakan pernyataan, Anda menambahkan klausa OPTION setelah klausa FROM dalam kueri menggunakan CTE rekursif.

Menentukan 0 dapat menyebabkan hal-hal buruk jika kueri masuk ke loop tak terbatas.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Performa agregasi bersyarat

  2. Jenis parameter tidak valid (numpy.int64) saat memasukkan baris dengan executemany()

  3. Tidak dapat terhubung ke database dari file

  4. Permintaan SQL untuk rantai induk-anak

  5. Gunakan TYPE_NAME() untuk Mendapatkan Nama Tipe Data di SQL Server