Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Update: Geringe Leistung, wenn ein AFTER-Trigger für eine partitionierte Tabelle in SQL Server 2008 R2 oder SQL Server 2012 läuft

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

2606883

Problembeschreibung
Szenarien Sie die folgenden:
  • Sie können in Microsoft SQL Server 2008 R2 oder in Microsoft SQL Server 2012 Partitionen für eine Tabelle erstellen.
  • Sie erstellen ein NACH Trigger für alle EINFÜGEN oder LÖSCHEN Operation, die in der Tabelle ausgeführt wird.
  • Sie führen ein EINFÜGEN oder LÖSCHEN der Vorgang in der Tabelle.

In diesem Szenario möglicherweise Leistungseinbußen auftreten. Möglicherweise viele logische Lesevorgänge auftreten, wenn Sie SQL Profiler ausführen.
Ursache
Dieses Problem tritt aus den folgenden Gründen:
  • Das Speichermodul verwaltet intern eine einzelne versionskette for each-Anweisung.
  • Die Ausführung die Abfrage sucht nach Partitionen der gesamte versionskette finden Sie die Zeilen, die eingefügt werden, für eine der Partitionen.

Lösung
Um dieses Problem zu beheben, wenden Sie den folgenden Hotfix, und verwenden Sie dann das T2470 Ablaufverfolgungsflag -

Kumulatives Update-Informationen

SQL Server-2012 Die Fehlerbehebung für dieses Problem wurde zuerst im kumulativen Update 1 für SQL Server 2012 veröffentlicht. Weitere Informationen über dieses kumulative Updatepaket finden Sie in folgendem Artikel der Microsoft Knowledge Base anzuzeigen:
2679368 Kumulatives Updatepaket 1 für SQL Server 2012
Hinweis Da die Builds kumulativ sind, jede neue Version enthält alle Hotfixes und alle die Sicherheitsupdates, die mit der vorherigen SQL Server 2012 enthalten waren. Microsoft empfiehlt, dass Sie sich die neueste Version, die diesen Hotfix enthält. Weitere Informationen finden Sie in folgendem Artikel der Microsoft Knowledge Base anzuzeigen:
2692828 Die SQL Server 2012 erstellt, die nach der Freigabe von SQL Server 2012
Sie müssen einen SQL Server 2012-Hotfix auf eine Installation von SQL Server 2012 anwenden.

SQL Server 2008 R2 Servicepack 1

Kumulatives Update-Informationen

Die Fehlerbehebung für dieses Problem wurde zuerst im kumulativen Update 3 für SQL Server 2008 R2 Service Pack 1 veröffentlicht. Weitere Informationen dazu, wie Sie dieses kumulative Updatepaket zu erhalten finden Sie in folgendem Artikel der Microsoft Knowledge Base anzuzeigen:
2591748 Kumulatives Updatepaket 3 für SQL Server 2008 R2 Service Pack 1
Hinweis Da die Builds kumulativ sind, jede neue Version enthält alle Hotfixes und alle die Sicherheitsupdates, die mit dem vorherigen SQL Server 2008 R2 enthalten waren. Wir empfehlen, dass Sie sich die neueste Version, die diesen Hotfix enthält. Weitere Informationen finden Sie in folgendem Artikel der Microsoft Knowledge Base anzuzeigen:
2567616 Die SQL Server 2008 R2 erstellt, die nach dem SQL Server 2008 R2 Service Pack 1 veröffentlicht wurden

Hotfix-Informationen

Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll jedoch nur das Problem zu beheben, das in diesem Artikel beschrieben wird. Wenden Sie diesen Hotfix nur auf Systemen, bei die dieses spezielle Problem auftritt.

Wenn der Hotfix zum Download zur Verfügung steht, ist es ein Abschnitt "Hotfixdownload available" (Hotfixdownload verfügbar"am oberen Rand dieser Knowledge Base-Artikel. Wenn in diesem Abschnitt nicht angezeigt wird, senden Sie eine Anforderung an Microsoft Customer Service und Support, um den Hotfix zu erhalten.

Hinweis Wenn weitere Probleme auftreten oder wenn eine Problembehandlung erforderlich ist, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die für diesen speziellen Hotfix nicht qualifizieren. Eine vollständige Liste der Microsoft-Kundendienst und Support-Telefonnummern oder eine separate Serviceanfrage erstellen finden Sie auf die folgende Microsoft-Website: Hinweis Das Formular "Hotfixdownload available" zeigt die Sprachen für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, ist es, da ein Hotfix nicht für diese Sprache verfügbar ist.

Voraussetzungen

Um diesen Hotfix anwenden zu können, müssen Sie Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) installiert haben.

Neustart erforderlich ist.

Sie haben nicht den Computer neu starten, nachdem Sie diesen Hotfix anwenden.

Ersetzte Hotfixes

Dieser Hotfix ersetzt keine zuvor veröffentlichten Hotfix.

Dateiinformationen

Die globale Version dieses besitzt die Dateiattribute (oder höher), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie die Dateiinformationen anzeigen, wird es in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln, verwenden die Zeitzone die Registerkarte der Datum und Uhrzeit Element in der Systemsteuerung.

Für alle unterstützten x 86-basierten Versionen von SQL Server 2008 R2 SP1
DateinameVersion der DateiDateigrößeDatumZeitPlattform
Sqlservr.exe2009.100.2776.043,053,92015-Sep-201101: 47X 86

Für alle unterstützten x 64-basierten Versionen vonSQL Server 2008 R2 SP1

DateinameVersion der DateiDateigrößeDatumZeitPlattform
Sqlservr.exe2009.100.2776.062,176,60815-Sep-201100: 57X 64

Für alle unterstützten IA-64-basierte VersionenSQL Server 2008 R2 SP1

DateinameVersion der DateiDateigrößeDatumZeitPlattform
Sqlservr.exe2009.100.2776.0122,105,69615-Sep-201100: 23IA-64


Abhilfe
Um dieses Problem zu umgehen, Ändern des AFTER -Triggers an einen INSTEAD OF INSERT -Trigger oder INSTEAD OF DELETE -Trigger.

Angenommen, Sie führen die folgenden Anweisungen, um einen AFTER -Trigger zu erstellen:
CREATE TRIGGER TR_Test ON Test FOR INSERTASBEGINDECLARE @groupe INTSELECT TOP 1 @groupe=Groupe FROM INSERTED ENDGO
In diesem Szenario ändern Sie den AFTER -Trigger, INSTEAD OF INSERT mithilfe der folgenden Anweisungen:
CREATE TRIGGER TR_Test ON Test INSTEAD OF INSERTAS BEGIN DECLARE @groupe INT SELECT TOP 1 @groupe=Groupe FROM INSERTEDINSERT INTO Test (Groupe) SELECT @groupe FROM INSERTED END
Status
Microsoft hat bestätigt, dass dies ein Problem in Microsoft-Produkten, die im Abschnitt "Gilt für" aufgeführt sind.

Warnung: Dieser Artikel wurde automatisch übersetzt

Eigenschaften

Artikelnummer: 2606883 – Letzte Überarbeitung: 04/16/2012 08:35:00 – Revision: 3.0

  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2012 Developer
  • kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbautohotfix kbmt KB2606883 KbMtde
Feedback
206977" class="ctl_footerNavLink" data-bi-name="Footer_TermsOfUse" data-bi-slot="1"> Nutzungsbedingungen
  • Datenschutz und Cookies
  • Markenzeichen
  • Kontakt
  • Impressum
  • Informationen zu unserer Werbung
  • © 2016 Microsoft