ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Registrar una columna ST_Geometry

  • Registrar una columna ST_Geometry en PostgreSQL
  • Registrar una columna ST_Geometry en SQLite
  • Registrar una columna ST_Geometry en Oracle

Si utiliza SQL para crear una tabla que contiene una columna de ST_Geometry, puede registrar la columna de utilizar una referencia espacial específica y dimensionalidad. De esa manera, al insertar registros a través SQL, no se pueden insertar accidentalmente registros que utilicen una referencia espacial diferente.

Registrar una columna ST_Geometry en PostgreSQL

Use st_register_spatial_column para registrar la columna ST_Geometry en una tabla de PostgreSQL creada con SQL. La sintaxis de la función st_register_spatial_column es la siguiente:

SELECT st_register_spatial_column (
 '<database_name>',
 '<schema_name>',
 '<table_name>',
 '<spatial_column_name>',
 <srid>,
 <coordinate_dimension>
);

El SRID que especifique debe existir en la tabla public.sde_spatial_references en PostgreSQL. La dimensión de coordenadas indica si los datos solo tienen coordenadas x, y (2), coordenadas x, y, z (3), coordenadas x, y, z, m (4), coordenadas x, y, m (5). Por defecto, si no se especifica una dimensión de coordenadas, los datos se registran como si solo tuvieran dimensiones x,y.

Los siguientes pasos proporcionan un ejemplo de cómo registrar una columna de ST_Geometry en PostgreSQL para utilizar un SRID específico y dimensionalidad:

  1. Abra una ventana de comando o un shell.
  2. Inicie sesión en un editor SQL y conéctese a la base de datos que contiene la tabla para la que desea registrar la columna ST_Geometry.

    En este ejemplo, el usuario horace se conecta a la base de datos spatdat.

    psql spatdat horace

  3. En la ventana de SQL, solicite la función st_register_spatial_column para registrar la columna espacial de la tabla para utilizar un SRID específico y dimensionalidad.

    Aquí, la columna de la tabla de puntos de referencia de georreferenciación en el esquema cleo está registrado con un SRID de 104199 y x, y, z dimensionalidad:

    SELECT sde.st_register_spatial_column(
     'spatdat',
     'cleo',
     'waypoints',
     'geo',
     104199,
     3
    );
    

    El usuario debe tener por lo menos privilegios SELECT en la tabla cleo.waypoints para registrar la columna espacial.

  4. Para confirmar que la tabla se registró correctamente, puede utilizar las funciones y st_isregistered_spatial_column y st_get_coord_dimension para devolver la información registrada.

    La función st_isregistered_spatial_column devuelve 1 (verdadero) si la columna está registrada con el SRID que se especificó.

    SELECT sde.st_isregistered_spatial_column(
     'spatdat',
     'cleo',
     'waypoints',
     'geo',
     104199
    );
    
    st_isregistered_spatial_column
    --------------------------------
    1
    

    La función st_coord_dimension devuelve qué dimensiones de la tabla puede almacenar:

    SELECT sde.st_get_coord_dimension(
     'cleo',
     'waypoints',
     'geo',
     104199
    );
    
    st_get_coord_dimension
    --------------------------------
    xyz
    

Registrar una columna ST_Geometry en SQLite

Use AddGeometryColumn para agregar una columna ST_Geometry a una tabla de SQLite y registrarla con un SRID y una dimensión de coordenadas específicos. A continuación se muestra la sintaxis de AddGeometryColumn:

SELECT AddGeometryColumn (
 <'main'|null>,
 <table_name>,
 <spatial_column_name>,
 <srid>,
 <geometry_type>
 <coordinate_dimension>,
 <'null'|'not null'>
);

Cuando se conecte a SQLite a través de un cliente de SQL, se conectará a main. Puede especificar main o usar null, que presupone que se está conectando a main. La dimensión de coordenadas es xy (2), xyz (3), xyzm (4) o xyzm (5). Si especifica una dimensión de xy o 2, no tendrá que incluirla en el tipo de geometría. Si especifica otras dimensiones de coordenadas cualesquiera, también tendrá que incluir esa información cuando especifique el tipo de geometría. Puede escribir el tipo de geometría o el código del tipo de geometría. Los posibles valores son los siguientes:

Valores de tipo de geometríaCódigo

st_geometry o geometría

0

st_point o point

1

st_linestring o linestring

2

st_polygon o polygon

3

st_multipoint o multipoint

4

st_multilinestring o multilinestring

5

st_multipolygon o multipolygon

6

st_geometryz o geometryz

1000

st_pointz o pointz

1001

st_linestringz o linestringz

1002

st_polygonz o polygonz

1003

st_multipointz o multipointz

1004

st_multilinestringz o multilinestringz

1005

st_multipolygonz o multipolygonz

1006

st_geometrym o geometrym

2000

st_pointm o pointm

2001

st_linestringm o linestringm

2002

st_polygonm o polygonm

2003

st_multipointm o multipointm

2004

st_multilinestringm o multilinestringm

2005

st_multipolygonm o multipolygonm

2006

st_geometryzm o geometryzm

3000

st_pointzm o pointzm

3001

st_linestringzm o linestringzm

3002

st_polygonzm o polygonzm

3003

st_multipointzm o multipointzm

3004

st_multilinestringzm o linestringzm

3005

st_multipolygonzm o multipolygonzm

3006

Consulte Crear tablas con una columna ST_Geometry para obtener un ejemplo de la creación de una tabla en SQLite y del uso de AddGeometryColumn para agregar y registrar la columna ST_Geometry.

Registrar una columna ST_Geometry en Oracle

En Oracle, crear un índice espacial en la columna ST_Geometry registra la columna de modo que use una referencia espacial específica. Consulte Crear índices espaciales en tablas con una columna ST_Geometry si desea obtener un ejemplo del uso de SQL para crear un índice espacial en Oracle.

Temas relacionados

  • Dar de baja una columna ST_Geometry
  • Crear tablas con una columna ST_Geometry
  • Referencias espaciales

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2021 Esri. | Privacidad | Legal