Gælder for
SQL Server 2019 on Linux SQL Server 2019 on Windows

Symptomer

Når SQL-planen har aktiveret interleaved execution og bruger OPTION-delsætningen (OPTIMIZE FOR), giver den tabelværdibaserede funktion (TVF), der bruger en parameter, der er overført i den samme SQL-sætning, forkerte resultater ved første kørsel.

Løsning

Dette problem er rettet i følgende akkumulerede opdatering til SQL Server:

Samlet opdatering 19 til SQL Server 2019

Bemærk Her er et eksempel på, at interleaved execution ikke bruges, når du har installeret denne samlede opdatering:

DECLARE @start smalldatetime SELECT count(*) FROM dbo.GetData(@start) OPTION (OPTIMIZE FOR (@start = '2022-05-23T06:00:00')) CREATE FUNCTION [dbo].[GetData] (   @start datetime ) RETURNS TABLE AS RETURN SELECT t.id FROM dbo.TestTable t WHERE t.testdate >= @start GO CREATE TABLE [dbo].[TestTable](        [id] [int] IDENTITY(1,1) NOT NULL,        [testdate] [datetime] NULL ) ON [PRIMARY] GO

Hver ny samlet opdatering til SQL Server indeholder alle de hotfixes og sikkerhedsrettelser, der var i det tidligere build. Vi anbefaler, at du installerer det nyeste build til din version af SQL Server:

Seneste kumulativ opdatering til SQL Server 2019

Status

Microsoft har bekræftet, at problemet findes i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".

Referencer

Få mere at vide om den terminologi, som Microsoft bruger til at beskrive softwareopdateringer.

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.