ST_Raster is a user-defined data type. It is stored in a single row, in a single column of object type ST_Raster in a user-defined table. ST_Raster provides full geodatabase support as well as SQL access to raster data. This enables you to write SQL applications that can access and use raster operations and queries.
ST_Raster is supported in Oracle, Microsoft SQL Server, and PostgreSQL databases. It is not supported in SQL Server Express.
To use the ST_Raster type, you must configure it in the geodatabase. See Install ST_Raster in Oracle, Install ST_Raster in PostgreSQL, or Install ST_Raster in SQL Server for instructions.
The ST_Raster object type is defined as follows:
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);
| Attribute | Descriptions | 
|---|---|
raster_id  | Uniquely identifies each raster within a table column defined as ST_Raster  | 
type  | Currently reserved for internal use only  | 
extent  | An optional attribute that stores the search extent  | 
properties  | Used to store various attributes associated with the raster but not individual raster bands  | 
rasterband_list  | A collection of raster bands that store band specific attributes  | 
data  | Reserved field  | 
The ST_Raster object is made up of several subobjects.

ST_RASTERBAND and ST_RASTERBAND_LIST
The ST_RASTERBAND_LIST type is defined as follows:
CREATE TYPE st_rasterband_list 
AS VARRAY(4096) OF ST_RASTERBAND;
The ST_RASTERBAND type is defined as follows:
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);
| Attribute | Description | 
|---|---|
rasterband_id  | Uniquely identifies each raster band within the ST_Raster type column  | 
sequence  | Maintains sequence of each band within the raster band collection; for a given raster band collection, the sequence value for each band within the collection must be unique.  | 
types  | A bitmask used to store various raster band metadata; individual attributes contained in the bitmask can be assessed and assigned through SQL functions. The value of this attribute should not be modified directly.  | 
width  | Defines the pixel width of the raster band  | 
height  | Defines the pixel height of the raster band  | 
extent  | The geographic extent of the raster band  | 
block_origin  | Maintains the geographic coordinate of the block origin  | 
block_width  | Defines the pixel width of the raster band tile  | 
block_height  | Defines the pixel height of the raster band tile  | 
flags  | Holds a bitmask of raster band metadata; individual attributes contained in the bitmask can be accessed and assigned by SQL functions. This value of this attribute should not be modified directly.  | 
SE_RASTERPROPERTY and SE_RASTERPROPERTY_LIST
The SE_RASTERPROPERTY_LIST type is defined as:
CREATE TYPE se_rasterproperty_list
  AS VARRAY(1048576) OF SE_RASTERPROPERTY;
The SE_RASTERPROPERTY type is defined as follows:
CREATE TYPE se_rasterproperty AS OBJECT (
  name				 VARCHAR2(65),
  intvalue	INTEGER,
  strvalue	VARCHAR2(160));
| Attribute | Description | 
|---|---|
name  | The name of the raster property  | 
intvalue  | Stores the integer value of the raster property  | 
strvalue  | Stores the string value of the raster property  | 
SE_EXTENT
The SE_EXTENT type is defined as follows:
CREATE TYPE se_extent AS OBJECT (
  minx				FLOAT(64),
  miny				FLOAT(64),
  maxx				FLOAT(64),
  maxy				FLOAT(64));
| Attribute | Description | 
|---|---|
minx  | The minimum X-coordinate value  | 
miny  | The minimum Y-coordinate value  | 
maxx  | The maximum X-coordinate value  | 
maxy  | The maximum Y-coordinate value  | 
SE_COORD
The SE_COORD type is defined as follows:
CREATE TYPE se_coord AS OBJECT (
  x				FLOAT(64),
  y				FLOAT(64));
| Attribute | Description | 
|---|---|
x  | The X-coordinate value  | 
y  | The Y-coordinate value  | 
ST_PIXELDATA
The ST_PIXELDATA type is defined as:
CREATE TYPE st_pixeldata AS OBJECT (
width    INTEGER,
height   INTEGER,
numbands INTEGER,
extent   SE_EXTENT,
types    INTEGER,
data     BLOB,
mask     BLOB);
| Attribute | Description | 
|---|---|
width  | The pixel width of the object  | 
height  | The pixel height of the object  | 
numbands  | Defines the number of bands of the object  | 
extent  | The geographic extent of object  | 
types  | A bitmask used to store various raster metadata; individual attributes contained in the bitmask can be assessed and assigned through SQL functions. The value of this attribute should not be modified directly.  | 
data  | The array of pixel values of the object  | 
mask  | The NoData bitmask array of the object  |