Artikel-ID: 198625 - Geändert am: Freitag, 21. November 2003 - Version: 3.1 Info: Vergleich mit Zahlen, Integer und andere optimieren
ZusammenfassungDaten-Typ-Optimierung mit Datentypen Numeric, Decimal und Integer einige sehr strengen Regeln verwenden. Dieser Artikel erläutert und erklärt die Bedingungen und Einschränkungen, die der Abfrageoptimierer, verwendet um exakten numerischen Daten geben Vergleiche durchzuführen. Überprüfen Sie im folgenden Abschnitt zum besseren Verständnis der Begriffe und Konzepte in diesem Artikel verwendet. " Genauigkeit " ist die Anzahl von Ziffern in eine Zahl. " Skalierung " ist die Anzahl der Ziffern rechts vom Dezimalzeichen in eine Zahl. Die Zahl 123,45 hat beispielsweise eine Genauigkeit von 5 und einen Maßstab von 2. Aufgrund von Beschränkungen mit der binäre Zahlensystem von Computern verwendet wird kann nicht einfach einige Dezimalbrüche genau dargestellt werden. Dezimalbruch 0,1 müssen z. B. keine genaue binäre Darstellung. Es kann nur Potenzreihenentwicklung angenähert werden. Es ist daher unverankerten zeigen- und Real Typen ungefähre gelten Datenwerte; während Integer, numeric, und decimal-Datentypen werden als genaue Datentypen behandelt. Die Begriffe " strict " oder " genau " werden in Ihrer Definition rechnerische bezeichnet. Beispielsweise wird eine numeric(10,1) nicht genau oder ausschließlich mit einer numeric(10,2) vergleichen selbst wenn die beteiligten Zahlen mathematisch äquivalent sind. Wert ein 10.1 und 10.10 sind mathematisch, genau die gleichen. Allerdings werden aufgrund von den Unterschied zwischen skalieren Sie nicht als rechnerisch genaue Übereinstimmung behandelt. Weitere InformationenUm der Optimierer Vergleichs Entscheidungen zu verstehen, müssen Sie zuerst die Möglichkeit, eingehende verstehen, Daten analysiert und behandelt werden.
Der Abfrageoptimierer macht eine Auswahl, wenn er beschließt, den Plan beenden: ist das eingehende Argument mehr oder weniger präzise als Definition der Tabelle? Wenn der Argumentwert genauer als die Spaltendaten ist, müssen die Spaltendaten an die Argument-Genauigkeit und Skalierung einrichten. Dies erfordert die Umwandlung von Daten in der Spalte und Pläne als Tabellenscans enthalten zu kann. Wenn der Argumentwert weniger genau als die Spaltendaten ist, kann das Argument an die Genauigkeit und Dezimalstellen der Spalte heraufgestuft werden. Dies führt i. d. r. einen Plan, der einen Index oder direktere Ansatz für die Daten abrufen Aufwand verwenden können. Zum besseren Verständnis dieses Konzepts werden einige Beispiele für unter angegeben. Beispiel 1
Berücksichtigen Sie als Beispiel: Alle numerischen Werte mit weniger als 10 skaliert und Genauigkeit 0 kann als Tinyint, Smallint oder ganzzahligen Typ bzw. dauert 1, 2 und 4 Bytes Speicherplatz, gespeichert werden. Im Vergleich dauert sogar der kleinste numerische Wert 5 Byte mit mehr Speicher zunehmender Genauigkeit erforderlich. Die folgende Tabelle zeigt die Zuordnung zwischen den Typen. Tabelle minimieren
Zusätzlich zu den Vorteilen durch Indizes effektiveren Verwendung verfügbar können Sie auch beträchtlichen Speicherplatz mithilfe der folgenden Datentypen angemessen speichern. SQL Server 7.0 hinzugefügt die ALTER TABLE ALTER COLUMN-Anweisungen, die verwendet werden können, um den Datentyp einer Spalte dynamisch zu ändern. In früheren Versionen von SQL Server diese Konvertierung erfolgt nur durch Erstellen einer neuen Tabelle mit den gewünschten Definitionen und Ausführen einer INSERT SELECT zum Füllen der Tabelle. Beachten Sie, dass diese Änderung erfordert möglicherweise Sie aktualisieren alle Trigger, gespeicherte Prozeduren oder anderen Code, die Variablen, die die Spalte für einen numerischen Typ erwartet. Die Informationen in diesem Artikel beziehen sich auf:
Maschinell übersetzter ArtikelWichtig: 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: 198625
(http://support.microsoft.com/kb/198625/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.
| Weitere Ressourcen Weitere SupportseitenCommunityHilfe erhaltenSPRACHE AUSWÄHLEN
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Zum Anfang