Symptomen

Ga ervan uit dat u Microsoft SQL Server 2016 of 2017 gebruikt. Wanneer u geheugen geoptimaliseerde gegevens transacties verwerkt met behulp van met geheugen geoptimaliseerde tabelvariabelen met de instructie where exists , kan dit resulteren in een onjuiste resultaten.

Bijvoorbeeld:

Step1: een geoptimaliseerde geheugen-database en-tabel maken.

Demo voor het maken van een DATABASE

De demo van een DATABASE wijzigen demo_mod bevat MEMORY_OPTIMIZED_DATA 

De demo van een DATABASE wijzigen bestand (naam = ' demo_mod1 ', bestandsnaam = ' C:\DATA\ demo_mod1 ') in BESTANDSGROEP demo_mod 

Demo gebruiken

Go

CREATE TYPE dbo. IN_MEMORY_TABLE_TYPE ALS TABEL

(source_col integer NULL,

target_col INT niet NULL

INDEX ix_InMemoryTable niet-geclusterd (target_col)

) MET (MEMORY_OPTIMIZED = AAN)

GO

Stap2: gegevens invoegen en gegevens bijwerken.

DECLAReer @t dbo. IN_MEMORY_TABLE_TYPE

@T (source_col, target_col) waarden invoegen (10; 0); (0; 0)

Select * from @t

UPDATE R1 target_col =-1 van @t R1

WAAR bestaat (SELECT * FROM @t R2, waarbij r2.source_col > 0)

SELECT * FROM @t

GO

Step3: resultaten bekijken.

Werkelijke resultaten: niet alle rijen van de tabelvariabele @t worden bijgewerkt.

source_col | target_col

----------------------

10 | -1

0 | 0

De verwachte resultaten: alle rijen moeten worden bijgewerkt, zodat target_col =-1wordt weergegeven.

source_col | target_col

----------------------

10 | -1

0 | 1.

Oplossing

Dit probleem is opgelost in de volgende cumulatieve updates voor SQL Server:

      Cumulatieve update 1 voor SQL Server 2017 

      Cumulatieve update 5 voor SQL Server 2016 SP1

Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:

Nieuwste cumulatieve update voor SQL Server 2017

Nieuwste cumulatieve updates voor SQL Server 2016

Status

Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.

Verwijzingen

Lees meer over de terminologiedie door Microsoft wordt gebruikt om software-updates te beschrijven.

Meer hulp nodig?

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Microsoft insiders

Was deze informatie nuttig?

Hoe tevreden bent u met de vertaalkwaliteit?
Wat heeft uw ervaring beïnvloed?

Bedankt voor uw feedback.

×