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

Perbedaan antara kesalahan kompilasi dan kesalahan run-time di SQL Server?

kompilasi kesalahan terjadi selama proses menghasilkan rencana eksekusi. Kesalahan waktu proses terjadi saat rencana dibuat dan dijalankan.

Satu-satunya cara untuk membedakan keduanya adalah apakah suatu rencana dihasilkan AFAIK atau tidak.

Contoh

/*Parse Error*/
SELEC * FROM master..spt_values

GO

/*Bind Error*/
SELECT * FROM master..spt_values_

GO


/*Compile time - constant folding error*/
SELECT LOG(0)
FROM master..spt_values

GO

/*Runtime Error*/
DECLARE @Val int = 0
SELECT  LOG(@Val)
FROM master..spt_values

2 yang terakhir menimbulkan kesalahan yang sama persis meskipun salah satunya adalah kesalahan waktu kompilasi dan yang lainnya adalah kesalahan waktu proses.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008 IDENTITY_INSERT AKTIF kesalahan pada Sisipkan

  2. Rata-Rata Bergerak / Rata-Rata Bergulir

  3. LANTAI () Contoh di SQL Server

  4. Namai indeks secara dinamis di SQL Server 2005?

  5. Mengapa ada semacam yang muncul dalam rencana eksekusi saya?