如果我尝试在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
这是什么意思......?我必须做些什么改变?
答案 0 :(得分:6)
您需要使用SQL Server 2005或更高版本才能使用TRY ... CATCH,如果您仍然连接到SQL 2000服务器,安装SQL Server Management Studio将无济于事。
答案 1 :(得分:0)
出现此类错误的原因似乎是目标数据库正在MS SQL Server 2000服务器上运行。所以请确保您的数据库服务器是SQL2005