Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Babelfish supporta i tipi di dati geospaziali
A partire dalle versioni 3.5.0 e 4.1.0, Babelfish include il supporto per i seguenti due tipi di dati spaziali:
-
Tipo di dati geometrici: questo tipo di dati è destinato alla memorizzazione di dati planari o euclidei (terra piatta).
-
Tipo di dati geografici: questo tipo di dati è destinato alla memorizzazione di dati ellissoidali o terrestri circolari, come le coordinate GPS di latitudine e longitudine.
Questi tipi di dati consentono l'archiviazione e la manipolazione di dati spaziali, ma con limitazioni.
Comprensione dei tipi di dati geospaziali in Babelfish
I tipi di dati geospaziali sono supportati in vari oggetti di database come viste, procedure e tabelle.
-
Supporta il tipo di dati puntuale 2D per archiviare i dati sulla posizione come punti definiti da latitudine, longitudine e un SRID (Spatial Reference System Identifier) valido.
-
Le applicazioni che si connettono a Babelfish tramite driver come JDBC, ODBC, DOTNET e PYTHON possono utilizzare questa funzionalità geospaziale.
Funzioni relative ai tipi di dati geometrici supportate in Babelfish
ST GeomFromText (
geometry_tagged_text, SRID) — Crea un'istanza geometrica utilizzando la rappresentazione Wooden Text
(WKT).ST PointFromText (
point_tagged_text
, SRID) — Crea un'istanza puntuale utilizzando la rappresentazione WKT.-
Point (X, Y, SRID) — Crea un'istanza puntuale utilizzando valori float delle coordinate x e y.
-
.ST AsText () <geometry_instance>— Estrae la rappresentazione WKT dall'istanza geometrica.
-
.stDistance (other_geometry) — Calcola la distanza tra due istanze geometriche<geometry_instance>.
-
.STX — Estrae la coordinata X (longitudine<geometry_instance>) per l'istanza geometrica.
-
.STY — Estrae la coordinata Y <geometry_instance>(latitudine) per l'istanza geometrica.
Funzioni relative ai tipi di dati geografici supportate in Babelfish
-
ST GeomFromText (
geography_tagged_text
, SRID) — Crea un'istanza geografica utilizzando la rappresentazione WKT. -
ST PointFromText (
point_tagged_text, SRID) — Crea un'istanza puntuale utilizzando
la rappresentazione WKT. -
Point (Lat, Long, SRID) — Crea un'istanza a punti utilizzando i valori float di Latitudine e Longitudine.
-
.ST AsText () <geography_instance>— Estrae la rappresentazione WKT dall'istanza geografica.
-
.stDistance (other_geography) — Calcola la distanza tra due istanze <geography_instance>geografiche.
-
.Lat — Estrae il valore di latitudine <geography_instance>per l'istanza geografica.
-
.Long<geography_instance>: estrae il valore di longitudine per l'istanza geografica.
Limitazioni di Babelfish per i tipi di dati geospaziali
-
Attualmente, Babelfish non supporta funzionalità più avanzate come i flag Z-M per le istanze puntuali dei tipi di dati geospaziali.
-
I tipi di geometria diversi dall'istanza puntuale non sono attualmente supportati:
LineString
CircularString
CompoundCurve
Poligono
CurvePolygon
MultiPoint
MultiLineString
MultiPolygon
GeometryCollection
Attualmente, l'indicizzazione spaziale non è supportata per i tipi di dati geospaziali.
Attualmente sono supportate solo le funzioni elencate per questi tipi di dati. Per ulteriori informazioni, consulta Funzioni relative ai tipi di dati geometrici supportate in Babelfish e Funzioni relative ai tipi di dati geografici supportate in Babelfish.
L'output della funzione stDistance per i dati geografici potrebbe presentare variazioni di precisione minori rispetto a T-SQL. Ciò è dovuto all'implementazione PostGIS sottostante. Per ulteriori informazioni, vedere ST_Distance
Per prestazioni ottimali, utilizzate i tipi di dati geospaziali incorporati, senza creare ulteriori livelli di astrazione in Babelfish.
Suggerimento
Sebbene sia possibile creare tipi di dati personalizzati, non è consigliabile crearli in aggiunta ai dati geospaziali. Ciò potrebbe introdurre complessità, che potrebbero portare a comportamenti imprevisti a causa del supporto limitato.
In Babelfish, i nomi delle funzioni geospaziali vengono utilizzati come parole chiave ed eseguiranno operazioni spaziali solo se utilizzate nel modo previsto.
Suggerimento
Quando crei funzioni e procedure definite dall'utente in Babelfish, evita di usare gli stessi nomi delle funzioni geospaziali integrate. Se avete oggetti di database esistenti con gli stessi nomi, usateli per rinominarli.
sp_rename