gpt4 book ai didi

sql-server - SQL Server 异常处理

转载 作者:行者123 更新时间:2023-12-04 11:00:18 25 4
gpt4 key购买 nike

我试图理解 的确切含义试一试不会捕获发生在同一范围内的编译错误。

我目前正在尝试在 SQL Server 中设置异常处理,我多次遇到此语句,但不太明白它的含义。我注意到如果我有一个 插入 语句,异常处理适用于 PRIMARY KEY 约束 错误,但它似乎不适用于 插入 包含额外列的语句。

最佳答案

it doesn't seem to work for INSERT statements that include an extra column.



是的,因为 TRY-CATCH 不会捕获发生在同一范围内的编译错误。

如果您的编译错误发生在嵌套范围内,您的 catch 块将运行。

这是该行为的一个简单示例:
create table t(id int)
go
begin try
insert into t(id) values (1,2)
end try
begin catch

select concat('catch block ', error_message())
end catch
go
begin try
exec ('insert into t(id) values (1,2)');
end try
begin catch

select concat('catch block ', error_message())
end catch

关于sql-server - SQL Server 异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58847461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com