Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

Symptomen

Stel dat u een kolom toevoegt aan een tabel in Microsoft SQL Server 2012 of SQL Server 2014. Wanneer de grootte van de rij dicht bij de maximaal toegestane grootte 8.060 bytes valt, kan het enige tijd duren voor het toevoegen van de rij.

Oorzaak

Het probleem kan zich voordoen omdat, wanneer de totale lengte van de rij dicht bij de maximaal toegestane Rijgrootte valt, SQL Server een volledige scan uitvoert van de tabel om ervoor te zorgen dat het toevoegen van een nieuwe kolom niet schendt voor de gegevensintegriteit. De versies vóór SQL Server 2012 doen deze controle niet plaats en Hiermee wordt DDL (Data Definition Language) sneller uitgevoerd. Dit gedrag levert echter wel het mislukken van verdere bewerkingen op, zoals het bijwerken of verkleinen van de Rijgrootte als de grootte van de rij groter is dan de toegestane grootte.

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:

Meer informatie

  • U kunt de traceringsvlag 647 inschakelen met behulp van de opstartparameter. Zie opstartopties voor de database-engine servicevoor informatie.

  • U kunt de volgende query uitvoeren (Vervang <tabelnaam> door uw werkelijke tabelnaam) om de bepaalde tabel vóór de bewerking op een productiesysteem te testen en het effect van dit probleem te plannen. Als het resultaat groter is dan 8.060, is de tabel onderhevig aan dit probleem. Als u kolommen hebt neergezet, moet u de tabel met de optie opnieuw opbouwen wijzigen. Als u de tabel opnieuw bouwt, kan de query de juiste resultaten krijgen.

    select  1+1+2 + 2 +  (case  when sum (case when leaf_offset < 0 then 1 else 0 end) > 0 then 2 else 0 end)  +  ( (count (*) + 7)/8 ) + count (case when leaf_offset < 0 then 1 else null end) * 2 +  sum( case when max_length=-1 then 24 else max_length end)  from sys.system_internals_partition_columns   col join sys.partitions par on col.partition_id = par.partition_id  where object_id = object_id ('<table name>')  and  index_id in (0,1) and partition_number =1 
  • U kunt overwegen om kolommen met een variabele lengte of sparse kolommen toe te voegen wanneer de toepassing regelmatig nieuwe kolommen aan de tabel toevoegt. Het is een bewerking met metagegevens, zelfs als de totale grootte van alle kolommen groter is dan 8.060 bytes.

Status

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

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×