小编pel*_*lod的帖子

MS SQL 2019 中 UDF 内的意外 @@rowcount 行为

这是我的示例代码

drop function rowcount_test
go
CREATE FUNCTION dbo.rowcount_test () RETURNS INT AS
BEGIN
    DECLARE @v INT
    SELECT @v = 1
    return @@ROWCOUNT
END
GO
grant exec on dbo.rowcount_test to public
go
SELECT dbo.rowcount_test()
Run Code Online (Sandbox Code Playgroud)

由 mssql 2017(及更早版本)执行时,它给出 1

由 mssql 2019 执行时它给出 0

它在 mssql 2019(标准版)执行时给出 1,并将 db 置于 2017 兼容模式

以前从来没出过问题……是MSSQL 2019中的某种影响代码的设置还是某种bug?

t-sql sql-server rowcount user-defined-functions sql-server-2019

7
推荐指数
1
解决办法
464
查看次数