Unexpected @@rowcount behavior inside an UDF in MS SQL 2019
问题 here's my sample code 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() It gives 1 when executed by mssql 2017 (and earlier) It gives 0 when executed by mssql 2019 It gives 1 when executed by mssql 2019 (Standard edition) with a db put to the 2017 compatibility mode It's never been a problem before... Is it a kind of setting