DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 830887 - Geändert am: Freitag, 2. November 2007 - Version: 5.3

Hotfix-Download ist verfügbar
Hotfix-Downloads anzeigen und anfordern
 
 
# Fehler: SHILOH_BUGS (470434)

Auf dieser Seite

Problembeschreibung

Ausführen einer Abfrage möglicherweise langsamer gegen Microsoft SQLServer 2000 Post-SP3-Hotfix Build 8.00.0776 oder höher im Vergleich zu Abfragen, Ausführen mit SQL Server 2000 vor Hotfix Build 8.00.0776, wenn folgenden Bedingungen erfüllt sind:
  • Die Abfrage umfasst eine linke äußere Verknüpfung von zwei Tabellen. Im folgenden Beispiel, Tabelle 1 ist die linke Tabelle und die Tabelle 2 ist die Rechte Tabelle.
  • Ein IS NULL Filterbedingung ist auf eine Spalte für die Rechte Tabelle (Tabelle 2) vorhanden.
  • Die beitretenden Spalten aufweisen unterschiedliche Datentypen. Eine Spalte vom Typ Varchar-Char ist und die anderen Spalte ist vom Typ Nvarchar-Nchar .
  • Sehr wenige die Ergebniszeilen Abfrage erfüllen die Bedingung auf die äußere Verknüpfung.
Beispielsweise eine Abfrage, die die folgende Bedingung beitreten und Filter enthalten langsamer ausführen kann:
t1 left outer join t2 on t1.c1 = t2.c1 where t2.c1 is null --t1.c1 is of type nvarchar and t2.c1 is of type varchar

Ursache

Dieses Problem rührt von SQL Server-Abfrageoptimierer die Anzahl der Zeilen unterschätzt, die nach der Verknüpfung das IS NULL Filter die Bedingung erfüllt.

Abhilfe

Um dieses Problem zu umgehen, stellen Sie sicher, dass beitretenden Spalten desselben Datentyps sind.

Lösung

Informationen zu Service Packs

Installieren Sie das neueste Service Pack für Microsoft SQL Server 2000, um dieses Problem zu beheben. Weitere Informationen finden Sie die folgende KB-Artikelnummer:
290211  (http://support.microsoft.com/kb/290211/ ) So erhalten Sie das neueste Service Pack für SQL Server 2000

Hotfix-Informationen

Die englische Version dieses Hotfixes weist die in der nachstehenden Tabelle aufgelisteten Dateiattribute (oder höher) auf. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time () angegeben. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln verwenden Sie die Registerkarte Zeitzone des Tools „ Datum und Uhrzeit in der Systemsteuerung.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------------
   31-May-2003  16:45  2000.80.818.0      78,400  Console.exe      
   28-Oct-2003  02:21  2000.80.873.0     315,968  Custtask.dll     
   02-Oct-2003  18:59  2000.80.867.0      33,340  Dbmslpcn.dll     
   25-Apr-2003  00:12                    786,432  Distmdl.ldf
   25-Apr-2003  00:12                  2,359,296  Distmdl.mdf
   29-Jan-2003  23:55                        180  Drop_repl_hotfix.sql
   12-Sep-2003  01:26  2000.80.859.0   1,905,216  Dtspkg.dll       
   26-Aug-2003  18:16  2000.80.854.0     528,960  Dtspump.dll      
   23-Jun-2003  20:40  2000.80.837.0   1,557,052  Dtsui.dll        
   23-Jun-2003  20:40  2000.80.837.0     639,552  Dtswiz.dll       
   24-Apr-2003  00:51                    747,927  Instdist.sql
   02-May-2003  23:56                      1,581  Inst_repl_hotfix.sql
   08-Feb-2003  04:40  2000.80.765.0      90,692  Msgprox.dll      
   01-Apr-2003  00:07                      1,873  Odsole.sql
   04-Apr-2003  23:46  2000.80.800.0      62,024  Odsole70.dll     
   07-May-2003  18:41  2000.80.819.0      25,144  Opends60.dll     
   02-Apr-2003  19:48  2000.80.796.0      57,904  Osql.exe         
   02-Apr-2003  21:15  2000.80.797.0     279,104  Pfutil80.dll     
   04-Aug-2003  16:17                    550,780  Procsyst.sql
   11-Sep-2003  22:37                     12,305  Qfe469315.sql
   22-May-2003  20:57                     19,195  Qfe469571.sql
   05-Sep-2003  23:36                  1,090,932  Replmerg.sql
   06-Sep-2003  05:18  2000.80.858.0     221,768  Replprov.dll     
   06-Sep-2003  05:18  2000.80.858.0     307,784  Replrec.dll      
   05-Sep-2003  22:00                  1,087,150  Replsys.sql
   13-Aug-2003  14:28                    986,603  Repltran.sql
   21-Oct-2003  22:08  2000.80.871.0      57,916  Semnt.dll        
   29-Jul-2003  18:13  2000.80.819.0     492,096  Semobj.dll       
   31-May-2003  16:27  2000.80.818.0     172,032  Semobj.rll
   05-Aug-2003  19:06                    127,884  Sp3_serv_uni.sql
   31-May-2003  23:01  2000.80.818.0   4,215,360  Sqldmo.dll       
   07-Apr-2003  15:44                     25,172  Sqldumper.exe    
   19-Mar-2003  16:20  2000.80.789.0      28,672  Sqlevn70.rll
   27-Sep-2003  02:42  2000.80.865.0     180,792  Sqlmap70.dll     
   03-Sep-2003  00:56  2000.80.857.0     188,992  Sqlmmc.dll       
   02-Sep-2003  21:03  2000.80.857.0     479,232  Sqlmmc.rll
   21-Oct-2003  22:08  2000.80.871.0     401,984  Sqlqry.dll       
   08-Feb-2003  04:40  2000.80.765.0      57,920  Sqlrepss.dll     
   28-Oct-2003  02:21  2000.80.873.0   7,606,353  Sqlservr.exe     
   25-Jul-2003  19:44  2000.80.845.0     590,396  Sqlsort.dll      
   08-Feb-2003  04:40  2000.80.765.0      45,644  Sqlvdi.dll       
   02-Oct-2003  18:59  2000.80.867.0      33,340  Ssmslpcn.dll     
   31-May-2003  23:01  2000.80.818.0      82,492  Ssnetlib.dll     
   31-May-2003  23:01  2000.80.818.0      25,148  Ssnmpn70.dll     
   28-Oct-2003  02:21  2000.80.873.0     123,456  Stardds.dll      
   31-May-2003  23:01  2000.80.818.0     158,240  Svrnetcn.dll     
   31-May-2003  16:59  2000.80.818.0      76,416  Svrnetcn.exe     
   30-Apr-2003  21:52  2000.80.816.0      45,132  Ums.dll          
   01-Jul-2003  22:19  2000.80.834.0      98,816  Xpweb70.dll      

Hinweis: Aufgrund von Dateiabhängigkeiten enthält das aktuellste Update oder Feature, das diese Dateien enthält, möglicherweise auch weitere Dateien.

Status

Microsoft hat bestätigt, dass dies ein Problem in den Microsoft-Produkten ist, die im Abschnitt "Gilt für" dieses Artikels aufgeführt sind.

Dieses Problem wurde erstmals im Microsoft SQL Server 2000 Service Pack 4.

Weitere Informationen

Nach der Installation beschriebene Hotfix in diesem Artikel müssen Sie sicherstellen, dass das Ablaufverfolgungsflag 9209 eingeschaltet ist, wenn Sie SQL Server starten. Für dieses Update wirksam wird müssen Sie Ablaufverfolgungs-Flag verfügen 9209 aktiviert, wenn Sie SQL Server starten. Gehen Sie dazu folgendermaßen vor:
  1. Starten Sie SQL Server Enterprise Manager.
  2. Klicken Sie mit der rechten Maustaste auf die Instanz von SQL Server, und klicken Sie dann auf Eigenschaften .
  3. Klicken Sie auf die Registerkarte Allgemein , und klicken Sie dann auf Startparameter .
  4. Geben Sie im Dialogfeld Startparameter -T9209 im Parameter klicken Sie auf Hinzufügen, und klicken Sie dann auf OK .
  5. Klicken Sie im Dialogfeld SQL Server-Eigenschaften auf OK .
  6. Starten Sie SQL Server neu.

Datentypkonvertierungen (in diesem Fall, wenn eine Nvarchar-Nchar -Spalte zu einer Varchar-Char -Spalte verglichen wird) auf eine Spalte in einer Abfrage möglicherweise nachteilig auf die Leistung der Abfrage enthält, und es ist eine gute Idee zu vermeiden, wenn Sie dies. SQL Server sein genau Kardinalität-Schätzungen zu erzeugen, wenn Sie Datentypkonvertierungen verwenden, möglicherweise. SQL Server kann auch über die entsprechenden Indizes eingeschränkt werden. Weitere Informationen zu Datentypkonvertierungen finden Sie die folgende KB-Artikelnummer:
271566  (http://support.microsoft.com/kb/271566/ ) PRB: SQLServer Vergleiche zwischen Spalten und Konstanten mit unterschiedlichen Datentypen

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
Keywords: 
kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB830887 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
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.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 830887  (http://support.microsoft.com/kb/830887/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store