HOW TO

Zugrundeliegender DBMS-Fehler [[Microsoft][SQL Native Client 10.0][Server] Arithmetischer Überlauffehler beim Konvertieren von Gleitkommazahlen in den Datentyp "Numerisch"

Last Published: April 23, 2024

Beschreibung

Es gibt bestimmte Workflows bei der Arbeit mit SQL Server, die das Importieren oder Laden von Shapefiles in Enterprise-Geodatabases umfassen, bei denen der folgende Fehler zurückgegeben werden kann, wenn in den zu ladenden Daten Felder vom Typ DOUBLE vorhanden sind:

Error:   
Underlying DBMS error {{Microsoft}{SQL Native Client 10.0}{Server}Arithmetic overflow error converting float to data type numeric.} {{<shapefile name>}

Ursache

Dieser Fehler ist auf die Art, wie SQL Server Datenfelder vom Typ FLOAT oder DOUBLE lädt oder konvertiert, zurückzuführen, insbesondere in Situationen, in denen die Felder eine geringe Genauigkeit aufweisen. Diese Regeln werden in Shapefile-Datenstrukturen nicht beibehalten, und daher wird der obige Fehler zurückgegeben, wenn die vorhandenen Daten die Genauigkeits- oder Maßstabslimits überschreiten, die beim Laden von Daten in SQL Server festgelegt sind.

Note:
Precision refers to the maximum total number of decimal digits that are stored, both to the left and right of the decimal point. The precision must have a value between 1, to the maximum precision of 38. The default precision in SQL Server is set to 18. This limit can be set higher (ex: 500) in ArcCatalog; however, the DBMS limit of 38 is maintained as the highest number storage possible. For more information, please review the Microsoft documentation in the Related Information section below.

Lösung oder Problemumgehung

Bearbeiten Sie den Genauigkeitsgrad der Enterprise-Feature-Class manuell, oder erhöhen Sie ihn, um ihn an die zu ladenden Daten anzupassen.

  1. Erstellen Sie eine neue Feature-Class in der Enterprise- oder SDE-Geodatabase, die zum Laden des Shapefiles verwendet wird.
    • Klicken Sie mit der rechten Maustaste auf die Datenbank oder das Dataset > Neu > Feature-Class.
  2. Importieren Sie das Koordinatensystem für die neue Feature-Class aus dem Shapefile. Importieren Sie außerdem die Felder aus dem Shapefile in die neue Feature-Class. Klicken Sie auf Weiter.
    Das Fenster "Neue Feature-Class", in dem ein ausgewähltes Koordinatensystem hervorgehoben ist.
  3. Akzeptieren Sie die Schlüsselwörter "tolerance" und "configuration", es sei denn, es werden benutzerdefinierte Einstellungen verwendet. Klicken Sie auf Weiter.
  4. Importieren Sie die Felder aus dem Shapefile.
    Das Fenster "Neue Feature-Class", in dem die entsprechenden Felder aus dem Shapefile aufgelistet sind.
Note:
The default precision values for DOUBLE fields are 0.
  1. Ändern Sie im Abschnitt Feldeigenschaften alle Genauigkeitswerte für alle Felder vom Typ DOUBLE auf die erforderlichen Maximalwerte für Daten (bis zu einem Maximum von 38).
    Das Fenster "Neue Feature-Class", in dem die Eigenschaft "Feldgenauigkeit" in 38 geändert wurde.
  2. Nachdem Sie die Genauigkeitswerte aktualisiert haben, klicken Sie auf Fertig stellen.
  3. Klicken Sie im Inhaltsverzeichnis mit der rechten Maustaste auf die neu erstellte Feature-Class. Wählen Sie Laden > Daten laden aus.
  4. Verweisen Sie in den Eingabedaten auf das Shapefile, und klicken Sie auf Hinzufügen, um die Quelldaten für das Laden aufzulisten. Verwenden Sie die Standardeinstellungen für den Rest, und fahren Sie mit dem Laden der Daten fort.

Artikel-ID: 000013811

Benachrichtigungen erhalten und Lösungen für neue oder häufige Probleme finden

Unser neuer KI-Chatbot stellt zusammengefasste Antworten und Videolösungen für Sie bereit.

Esri Support App herunterladen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln