попробуйте catch, который не работает в sql server 2005

StackOverflow https://stackoverflow.com/questions/1810032

  •  05-07-2019
  •  | 
  •  

Вопрос

если я попытаюсь запустить следующий код в sql server 2005, я получу сообщение об ошибке

BEGIN TRY

        SELECT 1/0;
    END TRY
    BEGIN CATCH
        SELECT
            ERROR_NUMBER() AS ErrorNumber
            ,ERROR_SEVERITY() AS ErrorSeverity
            ,ERROR_STATE() AS ErrorState
            ,ERROR_PROCEDURE() AS ErrorProcedure
            ,ERROR_LINE() AS ErrorLine
            ,ERROR_MESSAGE() AS ErrorMessage;
    END CATCH;
    GO

Ошибка:

Line 1: Incorrect syntax near 'TRY'.
Msg 156, Level 15, State 1, Line 4
Incorrect syntax near the keyword 'END'.
Msg 195, Level 15, State 10, Line 7
'ERROR_NUMBER' is not a recognized function name.

я использовал диспетчер служб sql server 2000, но теперь я установил диспетчер служб sql server 2005, но все еще получаю ошибку .. в одной статье, связанной с этим, говорится

причина такой ошибки, по-видимому, заключается в том, что целевая база данных запущена на сервере MS SQL Server 2000.Поэтому убедитесь, что вашим сервером базы данных является SQL2005

что это значит ..?какие изменения я должен внести???

Это было полезно?

Решение

Вы должны использовать SQL Server 2005 или выше, чтобы иметь возможность использовать TRY...ОБРАТИТЕ внимание, установка SQL Server Management Studio не поможет, если вы все еще подключаетесь к серверу SQL 2000.

Другие советы

причина такой ошибки, по-видимому, заключается в том, что целевая база данных запущена на сервере MS SQL Server 2000.Поэтому убедитесь, что вашим сервером базы данных является SQL2005

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top