Question

si j'essaie d'exécuter le code suivant sur SQL Server 2005, j'obtiens une erreur

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

Erreur:

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.

J'utilisais SQL Server 2000 Service Manager, mais maintenant, j'ai installé SQL Server 2005 Service Manager, mais j'obtiens toujours le message d'erreur..un article qui s'y rapporte dit:

la raison d'une telle erreur semble être que la base de données cible est en cours d'exécution sur un serveur MS SQL Server 2000. Assurez-vous donc que votre serveur de base de données est SQL2005

.

qu'est-ce que cela signifie ..? quels changements je dois faire ???

Était-ce utile?

La solution

Vous devez utiliser SQL Server 2005 ou version ultérieure pour pouvoir utiliser TRY ... CATCH, l'installation de SQL Server Management Studio ne vous aidera pas si vous vous connectez toujours à un serveur SQL 2000.

Autres conseils

la raison d'une telle erreur semble être que la base de données cible est en cours d'exécution sur un serveur MS SQL Server 2000. Assurez-vous donc que votre serveur de base de données est SQL2005

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top