

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 name="babelfish-geospatial"></a>

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
<a name="babelfish-geospatial-overview"></a>
+ 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.
+ Supporta il tipo di dati poligonali (dalla versione 5.5.0 e 6.0.0). Un poligono è una superficie bidimensionale memorizzata come una sequenza di punti che definisce un anello di delimitazione esterno e zero o più anelli interni.
+ 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
<a name="babelfish-geospatial-overview-geometry"></a>
+ **STGeomFromText ({{geometry\_tagged\_text}}, SRID)** — Crea un'istanza geometrica utilizzando Well-Known la rappresentazione di testo (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.
+ **.stArea ()** <geometry\_instance>— Calcola la superficie totale dell'istanza geometrica.
+ **.stSrid ()** <geometry\_instance>— Estrae l'identificatore di riferimento spaziale (SRID) dell'istanza geometrica.
+ **.stDimension () — Recupera la dimensione spaziale dell'istanza geometrica**<geometry\_instance>.
+ **<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 di dati geometrici.
+ **.stEquals (other\_geometry) — Verifica se l'istanza geometrica** <geometry\_instance>rappresenta lo stesso set di punti di un'altra istanza geometrica.
+ **.stContains (other\_geometry) — Verifica se l'istanza geometrica contiene l'istanza other\_geometry**<geometry\_instance>.
+ **.stDisjoint (other\_geometry**<geometry\_instance>) — Verifica se due istanze geometriche non hanno punti in comune.
+ **.stIntersects (other\_geometry) — Verifica se due istanze geometriche si intersecano spazialmente**<geometry\_instance>.
+ **<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.

A partire dalle versioni 5.5.0 e 6.0.0, Babelfish include il supporto per la seguente funzione di dati spaziali:
+ **STPolyFromText ({{polygon\_tagged\_text}}, SRID)** — Crea un'istanza poligonale utilizzando la rappresentazione WKT.

### Funzioni dei tipi di dati geografici supportate in Babelfish
<a name="babelfish-geospatial-overview-geography"></a>
+ **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.
+ **.stArea ()** <geography\_instance>— Calcola la superficie totale dell'istanza geografica.
+ **.stSrid ()** <geography\_instance>— Estrae l'identificatore di riferimento spaziale (SRID) dell'istanza geografica.
+ **.stDimension () — Recupera la dimensione spaziale dell'istanza geografica**<geography\_instance>.
+ **<geography\_instance>. STIsEmpty ()** — Verifica se l'istanza geografica è vuota.
+ **<geography\_instance>. STIsClosed ()** — 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 di dati geografici.
+ **.steQuals (other\_geography) — Verifica se l'istanza di geografia** <geography\_instance>rappresenta lo stesso set di punti di un'altra istanza geografica.
+ **.stContains (other\_geography) — Verifica se l'istanza di geografia contiene l'istanza other\_geography**<geography\_instance>.
+ **.stDisjoint (other\_geography**<geography\_instance>) — Verifica se due istanze geografiche non hanno punti in comune.
+ **.stIntersects (other\_geography) — Verifica se due istanze geografiche si intersecano spazialmente**<geography\_instance>.
+ **<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.

A partire dalle versioni 5.5.0 e 6.0.0, Babelfish include il supporto per la seguente funzione di dati spaziali:
+ **STPolyFromText ({{polygon\_tagged\_text}}, SRID)** — Crea un'istanza poligonale utilizzando la rappresentazione WKT.

## Limitazioni per i tipi di dati geospaziali in Babelfish
<a name="babelfish-geospatial-limitations"></a>
+ I tipi di geometria e geografia diversi dalle istanze point, linestring e polygon non sono attualmente supportati:
  + CircularString
  + CompoundCurve
  + 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](#babelfish-geospatial-overview-geometry) e [Funzioni dei tipi di dati geografici supportate in Babelfish](#babelfish-geospatial-overview-geography).
+ L'output della funzione stDistance per i dati di geografia potrebbe presentare variazioni di precisione minori rispetto a. T-SQL Ciò è dovuto all’implementazione di PostGIS sottostante. Per ulteriori informazioni, consulta [ST\_Distance](https://postgis.net/docs/ST_Distance.html).
+ STIsValid l'output della funzione per i dati di geometria e geografia potrebbe presentare alcune deviazioni rispetto a. T-SQL Per questo motivo, in alcuni casi anche le funzioni - stDistance, stContains, stinsterSects, stDisJoint, stDimension, stArea, steQuals possono differire da (restituisce un output anziché generare un errore). T-SQL Ciò è dovuto all’implementazione di PostGIS sottostante. [Per ulteriori informazioni, vedere ST\_. IsValid](https://postgis.net/docs/ST_IsValid.html)
+ 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.