¿Qué es el tipo de almacenamiento ST_Raster?
ST_Raster es un tipo de datos definido por el usuario. Se almacena en una fila simple, en una columna simple de tipo de objeto ST_Raster en una tabla definida por el usuario. ST_Raster proporciona una compatibilidad completa para la geodatabase así como acceso SQL a los datos ráster. Esto permite escribir aplicaciones SQL mediante el sistema de administración de bases de datos (DBMS) que puede utilizar y acceder a las operaciones y consultas de ráster.
ST_Raster es compatible con bases de datos Oracle, Microsoft SQL Server y PostgreSQL. No es compatible con SQL Server Express.
Para utilizar el tipo ST_Raster, debe configurarlo en el DBMS. Consulte Instalar el tipo ST_Raster en Oracle, Instalar el tipo ST_Raster en PostgreSQL o Instalar el tipo ST_Raster en SQL Server para obtener más instrucciones.
El tipo de objeto ST_Raster se define de la siguiente manera:
CREATE TYPE ST_Raster AS OBJECT ( raster_id INTEGER, type INTEGER, extent SE_EXTENT, properties SE_RASTERPROPERTY_LIST, rasterband_list ST_RASTERBAND_LIST data ST_PIXELDATA);
Atributo |
Descripciones |
---|---|
raster_id |
Identifica unívocamente cada ráster dentro de una columna de la tabla definida como ST_Raster |
tipo |
Actualmente reservado sólo para uso interno |
extensión |
Atributo opcional que almacena la extensión de la búsqueda |
propiedades |
Se utilizan para almacenar varios atributos asociados con el ráster pero no bandas de ráster individuales |
rasterband_list |
Conjunto de bandas de ráster que almacenan atributos específicos de la banda |
datos |
Campo reservado |
El objeto ST_Raster está constituido por varios subobjetos.
ST_RASTERBAND y ST_RASTERBAND_LIST
El tipo ST_RASTERBAND_LIST se define de la siguiente manera:
CREATE TYPE st_rasterband_list AS VARRAY(4096) OF ST_RASTERBAND;
El tipo ST_RASTERBAND se define de la siguiente manera:
CREATE TYPE st_rasterband AS OBJECT ( rasterband_id INTEGER, sequence INTEGER, types INTEGER, width INTEGER, height INTEGER, extent SE_EXTENT, block_origin SE_COORD, block_width INTEGER, block_height INTEGER, flags INTEGER);
Atributo |
Descripción |
---|---|
rasterband_id |
Identifica unívocamente cada banda de ráster dentro de la columna de tipo ST_Raster |
secuencia |
Mantiene la secuencia de cada banda dentro del conjunto de banda de ráster; para un conjunto de banda de ráster determinado, el valor de secuencia de cada banda dentro del conjunto debe ser único. |
tipos |
Una máscara de bits que se utiliza para almacenar varios metadatos de banda de ráster; los atributos individuales contenidos en la máscara de bits se pueden evaluar y asignar mediante las funciones de SQL. El valor de este atributo no debe modificarse directamente. |
ancho |
Define el ancho de píxel de la banda de ráster |
altura |
Define la altura de píxel de la banda de ráster |
extensión |
La extensión geográfica de la banda de ráster |
block_origin |
Mantiene las coordenadas geográficas del origen de bloque |
block_width |
Define el ancho de píxel de la tesela de la banda de ráster |
block_height |
Define la altura de píxel de la tesela de la banda de ráster |
marcadores |
Guarda un máscara de bits de metadatos de banda de ráster; las funciones de SQL pueden asignar y acceder a los atributos individuales contenidos en la máscara de bits. Este valor de este atributo no debe modificarse directamente. |
SE_RASTERPROPERTY y SE_RASTERPROPERTY_LIST
El tipo SE_RASTERPROPERTY_LIST se define como:
CREATE TYPE se_rasterproperty_list AS VARRAY(1048576) OF SE_RASTERPROPERTY;
El tipo SE_RASTERPROPERTY se define de la siguiente manera:
CREATE TYPE se_rasterproperty AS OBJECT ( name VARCHAR2(65), intvalue INTEGER, strvalue VARCHAR2(160));
Atributo |
Descripción |
---|---|
nombre |
El nombre de la propiedad de ráster |
intvalue |
Almacena el valor entero de la propiedad de ráster |
strvalue |
Almacena el valor de cadena de texto de la propiedad de ráster |
SE_EXTENT
El tipo SE_EXTENT se define de la siguiente manera:
CREATE TYPE se_extent AS OBJECT ( minx FLOAT(64), miny FLOAT(64), maxx FLOAT(64), maxy FLOAT(64));
Atributo |
Descripción |
---|---|
minx |
El valor mínimo de la coordenada X |
miny |
El valor mínimo de la coordenada Y |
maxx |
El valor máximo de la coordenada X |
maxy |
El valor máximo de la coordenada Y |
SE_COORD
El tipo SE_COORD se define de la siguiente manera:
CREATE TYPE se_coord AS OBJECT ( x FLOAT(64), y FLOAT(64));
Atributo |
Descripción |
---|---|
x |
El valor de la coordenada X |
y |
El valor de la coordenada Y |
ST_PIXELDATA
El tipo ST_PIXELDATA se define como:
CREATE TYPE st_pixeldata AS OBJECT ( width INTEGER, height INTEGER, numbands INTEGER, extent SE_EXTENT, types INTEGER, data BLOB, mask BLOB);
Atributo |
Descripción |
---|---|
ancho |
El ancho de píxel del objeto |
altura |
La altura de píxel del objeto |
numbands |
Define la cantidad de bandas del objeto |
extensión |
La extensión geográfica del objeto |
tipos |
Una máscara de bits que se utiliza para almacenar varios metadatos de ráster; los atributos individuales contenidos en la máscara de bits se pueden evaluar y asignar mediante las funciones de SQL. El valor de este atributo no debe modificarse directamente. |
datos |
El conjunto de valores de píxel del objeto |
máscara |
El conjunto de la máscara de bits NoData del objeto |