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 terra rotonda, come le coordinate GPS di latitudine e longitudine.
Questi tipi di dati consentono l’archiviazione e la manipolazione di dati spaziali, ma con limitazioni.
Informazioni sui 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 per memorizzare i dati sulla posizione come punti definiti da latitudine, longitudine e un SRID (Spatial Reference System Identifier) valido. Un punto può contenere valori Z (elevazione), M (misura) e può essere vuoto.
-
Supporta il tipo di dati linestring (a partire dalla versione 5.4.0) definito da una sequenza di punti e dai segmenti di linea che li collegano e da un SRID (Spatial Reference System Identifier) valido. Una stringa di linee può contenere punti con valori Z (elevazione), M (misura) e può essere vuota.
-
Le applicazioni che si connettono a Babelfish tramite driver come JDBC, ODBC, DOTNET e PYTHON possono utilizzare questa funzionalità geospaziale.
Funzioni dei tipi di dati geometrici supportate in Babelfish
STGeomFromText (
geometry_tagged_text, SRID) — Crea un'istanza geometrica utilizzando la rappresentazione Wooden Text (WKT).STPointFromText (
point_tagged_text, SRID) — Crea un'istanza puntuale utilizzando la rappresentazione WKT.-
Point (X, Y, SRID): crea un’istanza di punti dati utilizzando valori in virgola mobile delle coordinate x e y.
-
<geometry_instance>. STAsText () — Estrae la rappresentazione WKT dall'istanza geometrica.
-
<geometry_instance>. STAsBinary () — Estrae la rappresentazione WKB dall'istanza geometrica.
-
<geometry_instance>. STArea () — Calcola la superficie totale dell'istanza geometrica.
-
<geometry_instance>. STSrid () — Estrae l'identificatore di riferimento spaziale (SRID) dell'istanza geometrica.
-
<geometry_instance>. STDimension () — Recupera la dimensione spaziale dell'istanza geometrica.
-
<geometry_instance>. STIsEmpty () — Verifica se l'istanza geometrica è vuota.
-
<geometry_instance>. STIsClosed () — Verifica se l'istanza geometrica è chiusa.
-
<geometry_instance>. STIsValid () — Verifica se l'istanza geometrica è valida.
-
<geometry_instance>. STDistance (other_geometry) — Calcola la distanza tra due istanze geometriche.
-
<geometry_instance>. STEquals (other_geometry) — Verifica se l'istanza geometrica rappresenta lo stesso set di punti di un'altra istanza geometrica.
-
<geometry_instance>. STContains (other_geometry) — Verifica se l'istanza geometrica contiene l'istanza other_geometry.
-
<geometry_instance>. STDisjoint (other_geometry) — Verifica se due istanze geometriche non hanno punti in comune.
-
<geometry_instance>. STIntersects (other_geometry) — Verifica se due istanze geometriche si intersecano spazialmente.
-
<geometry_instance>.STX: estrae la coordinata X (longitudine) per l’istanza di dati geometrici.
-
<geometry_instance>.STY: estrae la coordinata Y (latitudine) per l’istanza di dati geometrici.
A partire dalle versioni 4.7.0 e 5.3.0, Babelfish include il supporto per le seguenti funzioni relative ai dati spaziali:
-
.M — Estrae la coordinata M <geometry_instance>dell'istanza geometrica.
-
.Z — Estrae <geometry_instance>la coordinata Z dell'istanza geometrica.
-
.hasM <geometry_instance>— Verifica se l'istanza geometrica ha almeno un valore M.
-
.hasZ <geometry_instance>— Verifica se l'istanza geometrica ha almeno un valore Z.
A partire dalla versione 5.4.0, Babelfish include il supporto per la seguente funzione di dati spaziali:
-
STLineFromText (
linestring_tagged_text, SRID) — Crea un'istanza di linestring utilizzando la rappresentazione WKT.
Funzioni dei tipi di dati geografici supportate in Babelfish
-
STGeomFromText (
geography_tagged_text, SRID) — Crea un'istanza geografica utilizzando la rappresentazione WKT. -
STPointFromText (
point_tagged_text, SRID) — Crea un'istanza puntuale utilizzando la rappresentazione WKT. -
Point (Lat, Long, SRID): crea un’istanza di punti dati utilizzando i valori in virgola mobile di latitudine e longitudine.
-
<geography_instance>. STAsText () — Estrae la rappresentazione WKT dall'istanza geografica.
-
<geography_instance>. STAsBinary (): estrae la rappresentazione WKB dall'istanza geografica.
-
<geography_instance>. STArea () — Calcola la superficie totale dell'istanza geografica.
-
<geography_instance>. STSrid () — Estrae l'identificatore di riferimento spaziale (SRID) dell'istanza geografica.
-
<geography_instance>. STDimension () — Recupera la dimensione spaziale dell'istanza geografica.
-
<geography_instance>. STIsEmpty (): verifica se l'istanza geografica è vuota.
-
<geography_instance>. STIsChiusa (): verifica se l'istanza geografica è chiusa.
-
<geography_instance>. STIsValid (): verifica se l'istanza geografica è valida.
-
<geography_instance>. STDistance (other_geography) — Calcola la distanza tra due istanze geografiche.
-
<geography_instance>. STEquals (other_geography) — Verifica se l'istanza geografica rappresenta lo stesso set di punti di un'altra istanza geografica.
-
<geography_instance>. STContains (other_geography) — Verifica se l'istanza geography contiene l'istanza other_geography.
-
<geography_instance>. STDisjoint (other_geography) — Verifica se due istanze geografiche non hanno punti in comune.
-
<geography_instance>. STIntersects (other_geography) — Verifica se due istanze geografiche si intersecano spazialmente.
-
<geography_instance>.Lat: estrae il valore di latitudine per l’istanza di dati geografici.
-
<geography_instance>.Long: estrae il valore di longitudine per l’istanza di dati geografici.
A partire dalle versioni 4.7.0 e 5.3.0, Babelfish include il supporto per le seguenti funzioni relative ai dati spaziali:
-
.M — Estrae la coordinata M <geography_instance>dell'istanza geografica.
-
.Z — Estrae <geography_instance>la coordinata Z dell'istanza geografica.
-
.hasM <geography_instance>— Verifica se l'istanza geografica ha almeno un valore M.
-
.hasZ<geography_instance>: verifica se l'istanza geografica ha almeno un valore Z.
A partire dalla versione 5.4.0, Babelfish include il supporto per la seguente funzione di dati spaziali:
-
STLineFromText (
linestring_tagged_text, SRID) — Crea un'istanza di linestring utilizzando la rappresentazione WKT.
Limitazioni per i tipi di dati geospaziali in Babelfish
-
I tipi di geometria e geografia diversi dalle istanze point e linestring non sono attualmente supportati:
CircularString
CompoundCurve
Poligono
CurvePolygon
MultiPoint
MultiLineString
MultiPolygon
GeometryCollection
Attualmente, l’indicizzazione spaziale non è supportata per i tipi di dati geospaziali.
Per questi tipi di dati al momento sono supportate solo le funzioni elencate. Per ulteriori informazioni, consultare Funzioni dei tipi di dati geometrici supportate in Babelfish e Funzioni dei tipi di dati geografici supportate in Babelfish.
STDistance l'output della funzione per i dati geografici potrebbe presentare variazioni di precisione minori rispetto a T-SQL. Ciò è dovuto all’implementazione di PostGIS sottostante. Per ulteriori informazioni, consulta ST_Distance
. STIsL'output di una funzione valido per i dati di geometria e geografia potrebbe presentare alcune deviazioni rispetto a T-SQL. Per questo motivo, in alcuni casi le funzioni - STDistance STContains,, STInstersects, STDisjoint, STDimension, STArea, STEquals possono anche differire da T-SQL (restituiscono un output anziché generare errori). Ciò è dovuto all’implementazione di PostGIS sottostante. Per ulteriori informazioni, vedere ST_. IsValid
Per prestazioni ottimali, si utilizzano i tipi di dati geospaziali incorporati, senza creare ulteriori livelli di astrazione in Babelfish.
In Babelfish, i nomi delle funzioni geospaziali vengono utilizzati come parole chiave ed eseguono operazioni sui dati spaziali solo se utilizzate nel modo previsto.