Разница между ошибками компиляции и ошибками времени выполнения в SQL Server? - PullRequest
0 голосов
/ 02 декабря 2011

В чем разница между ошибками компиляции и ошибками времени выполнения в SQL Server?Как эти ошибки различаются в SQL Server?

1 Ответ

3 голосов
/ 02 декабря 2011

ошибки компиляции возникают в процессе генерации плана выполнения. Ошибки времени выполнения возникают при создании и выполнении плана.

Единственный способ различения этих двух типов заключается в том, генерируется ли план AFAIK.

Примеры

/*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 вызывают точно такую ​​же ошибку, даже если одна ошибка времени компиляции, а другая ошибка времени выполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...