sql >> Base de Datos >  >> RDS >> Sqlserver

SQL:Try/Catch no detecta un error al intentar acceder a una tabla que no puede encontrar

Al comienzo de su secuencia de comandos, use SET XACT_ABORT

SET XACT_ABORT ON

No creo que eso sea posible:

Referencia .

USE AdventureWorks2012;
GO

BEGIN TRY
    -- Table does not exist; object name resolution
    -- error not caught.
    SELECT * FROM NonexistentTable;
END TRY
BEGIN CATCH
    SELECT 
        ERROR_NUMBER() AS ErrorNumber
        ,ERROR_MESSAGE() AS ErrorMessage;
END CATCH