SQL Server中的存储过程有时会以返回码完成,而不是数据记录集。我已经看到了能够获得此返回代码的ASP代码,但我无法弄清楚如何使用PHP的mssql驱动程序获取此代码。
mssql_get_last_message()总是不返回任何内容,我认为这是因为它只返回来自服务器的最后一行。当我们在另一个应用程序(PHP之外)中运行proc时,返回代码后面会出现空行。
有没有人想过如何使用PHP的mssql驱动程序从SQL存储过程中获取返回码?
答案 0 :(得分:2)
您是在谈论SQL Server错误代码,例如RAISERRROR或其他失败?如果是这样,我上次检查PHP时你需要要求@@ ERROR(例如选择@@ error)。
如果是返回代码,则必须明确地捕获它,例如
DECLARE @return_code INT
EXEC @return_code = your_stored_procedure 1123
SELECT @return_code
答案 1 :(得分:0)
要从mssql获取数字错误代码,您可以执行类似
的选择SELECT @@ERROR AS ErrorCode
哪个应该返回正确的错误代码。