J. *_*ini -1 sql-server t-sql raiserror
RAISERROR
与已弃用一样好。文档说
新的应用程序应该使用
THROW
而不是RAISERROR
.
然而,它通常用于刷新打印缓冲区。
假设我正在编写一个很长的存储过程,并且我想要定期报告它所处的步骤。如果RAISERROR
这是不可能的,我应该如何PRINT
摆脱它?
假设 SQL Server 版本相对较新。就说2019年吧。
对于微软来说,这仅仅意味着它们不再积极地进一步开发。但这些东西都没有真正从产品中提取出来。
但RAISERROR
没有在任何地方被列为已弃用。
不在这里:
除了这个注释:
它也没有列在这里:
SELECT
pc.*
FROM sys.dm_os_performance_counters AS pc
WHERE object_name LIKE 'SQLServer:Deprecated Features%'
ORDER BY
pc.instance_name;
Run Code Online (Sandbox Code Playgroud)
您不会面临无法使用它的任何危险。如果您查看正式弃用的内容列表,您会发现几乎所有这些内容仍然存在于 SQL Server 2022 的产品中。
对于微软来说,完全删除任何东西是相当困难的,即使是提前多年通知,因为如果某些已经工作了 20 多年的东西突然停止工作,将会引起大量的尖叫。