Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL:Try/Catch nie przechwytuje błędu podczas próby uzyskania dostępu do tabeli, której nie może znaleźć

Na początku skryptu użyj SET XACT_ABORT

SET XACT_ABORT ON

Nie sądzę, że będzie to możliwe:

Ref .

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. newid() wewnątrz funkcji serwera sql

  2. Zmień przesunięcie strefy czasowej w wartości przesunięcia daty i godziny w programie SQL Server (T-SQL)

  3. Strony kodowe i zestawienia SQL Server

  4. Jak przekonwertować puste spacje na wartości null za pomocą SQL Server?

  5. Unikalne ograniczenie w grupie rekordów, w których pewna wartość jest taka sama