Ich arbeite mit einer Anwendung, die ziemlich große Zahlen verwendet, und ich muss Daten als eine vorzeichenlose 64-Bit-Ganzzahl speichern. Ich bevorzuge es einfach zu speichern, ohne mich um Bitmanipulation oder ähnliches zu kümmern, so dass verschiedene Programme die Daten auf verschiedene Arten verwenden können.Wie speichern Sie 64-Bit-Integer ohne Vorzeichen in SQL Server?
7
A
Antwort
2
AFAIK, Sie müssten einen benutzerdefinierten Typ erstellen. Pointers here obwohl dieser Artikel mehr für die Beschränkung negative Zahlen ist ...
5
können Sie speichern den Wert in einem NUMERIC
Typ mit einem scale
von 0, die die integer
Semantik erforderlich behalten. Der Typ NUMERIC
wird negative Zahlen zulassen, obwohl Sie eine Integritätsbedingung festlegen können, die positive ganze Zahlen erfordert.
Das Maximum precision
für NUMERIC
ist 38 Dezimalziffern. 2**64
ist irgendwo um 18 oder 19 Dezimalstellen, so NUMERIC(19,0)
würde wahrscheinlich gut für diese Daten funktionieren.
Ist nicht 2 an die Macht von 64 '18, 446, 744, 073, 709, 551, 616 '- oder 20 Ziffern? Wenn ja, würde das bedeuten, dass Sie eine NUMERIC (20,0) benötigen, um sie zu speichern? –