SQL-Integer-Größen

September 3

Mit den richtigen Daten ist Typ in SQL kritisch, da unterschiedliche Datentypen unterschiedliche Mengen an Speicherplatz verwenden zu speichern, haben verschiedene Bereiche und können unterschiedliche Ergebnisse bei der Verwendung in Berechnungen mit Rundung liefern. Mit numerischen Datentypen, z. B. Integer ist dies besonders wichtig. Der verwendeten Datentyp bestimmt den maximalen Bereich der Werte, auch wenn der Wert negativ oder nicht sein darf. Die Verwendung von numerischen Datentypen in Ganzzahlwerte enthalten variiert abhängig von der Datenbanksprache.

Integer-Werte

Alle SQL-Versionen unterstützen die Speicherung von ganzzahligen Werten, aber es gibt einige Unterschiede, wie dies umgesetzt wird. Der Integer-Datentyp, mit dem Namen "Int" oder "ganze Zahl", fasst Werte von-2 ^ 31-2 ^ 31. Oracle empfiehlt die Verwendung von PLS_integer beim Speichern von Zahlen in diesem Bereich für eine bessere Leistung. Einen Integer-Wert in diesem Format Speichern erlaubt nicht die Verwendung von Dezimalstellen und nimmt vier Bytes Speicherplatz zum Speichern.

Winzige ganzzahlige Werte

Die Umsetzung der den Tinyint-Datentyp variiert zwischen den verschiedenen Datenbankanbietern. In Microsoft SQL muss Tinyint ein positiver Wert zwischen 0 und 255 sein. In MySQL kann der Wert zwischen-128 und 127 oder zwischen 0 und 255 sein. In beiden Fällen erfordert die Daten ein Byte Speicherplatz. Oracle unterstützt Tinyint nicht explizit, sondern Number(1) verwendet.

Große Integer-Werte

Große Integer-Werte sind die Überschreitung des Bereiches der Norm Integer-Datentyp. Sie verwenden die acht Byte Speicherplatz. In Microsoft und MySQL, die der Bigint-Datentyp reichen von-2 ^ 63 bis 2 ^ 63. MySQL unterstützt auch eine vorzeichenlose Bereich von 0 bis 2 ^ 64. Speichern von Zahlen in diesem Bereich in Oracle wieder verwendet den Datentyp Zahl.

Partielle ganzzahlige Werte

Speichern von Zahlen, die nicht ganze Zahlen - die mit Dezimalstellen - stellt eine Herausforderung für Datenbank-Designer. Alle Datenbanksprachen unterstützen, definieren eine numerische Datentypen Genauigkeit und Dezimalstellenanzahl. Oracle verwendet number(p,s), während MySQL und Microsoft SQL decimal(p,s) oder numeric(p,s) verwenden. Die Genauigkeit ist die Gesamtzahl der Ziffern, die gespeichert werden können. Die Skala ist die maximale Anzahl der Ziffern rechts vom Dezimaltrennzeichen. Die hier eingestellten Werte können beeinflussen, Rundung und Berechnungen durchgeführt, sodass sie sorgfältig ausgewählt werden sollte.