.

Plugin-ul GeoRaster Oracle Spatial

In Oracle databases, raster data can be stored in SDO_GEORASTER objects available with the Oracle Spatial extension. In QGIS, the oracle_raster Oracle Spatial GeoRaster plugin is supported by GDAL and depends on Oracle’s database product being installed and working on your machine. While Oracle is proprietary software, they provide their software free for development and testing purposes. Here is one simple example of how to load raster images to GeoRaster:

$ gdal_translate -of georaster input_file.tif geor:scott/tiger@orcl

Acesta va încărca rasterul în tabela GDAL_IMPORT, sub forma unei coloane denumite RASTER.

Gestionare conexiuni

Firstly, the Oracle GeoRaster Plugin must be enabled using the Plugin Manager (see Dialogul Plugin-urilor). The first time you load a GeoRaster in QGIS, you must create a connection to the Oracle database that contains the data. To do this, begin by clicking on the oracle_raster Add Oracle GeoRaster Layer toolbar button – this will open the Select Oracle Spatial GeoRaster dialog window. Click on [New] to open the dialog window, and specify the connection parameters (See Figure_oracle_raster_1):

  • Nume: Introduceți un nume pentru conexiunea la baza de date.

  • Instanța bazei de date: Introduceți numele bazei de date la care vă veți conecta.

  • Numele de utilizator: Numele utilizatorului care va fi utilizat pentru accesarea bazei de date.

  • Parola: Parola asociată numelui de utilizator care este cerut la accesarea bazei de date.

Figure Oracle Raster 1:

../../../_images/oracle_create_dialog.png

Dialogul de Creare a conexiunilor Oracle

Now, back on the main Oracle Spatial GeoRaster dialog window (see Figure_oracle_raster_2), use the drop-down list to choose one connection, and use the [Connect] button to establish a connection. You may also [Edit] the connection by opening the previous dialog and making changes to the connection information, or use the [Delete] button to remove the connection from the drop-down list.

Selectarea unui GeoRaster

O dată ce o conexiune a fost stabilită, fereastra subseturilor de date va arata numele tuturor tabelelor care conțin coloanele GeoRaster din această bază de date, în formatul unui nume de subset de date GDAL.

Click on one of the listed subdatasets and then click on [Select] to choose the table name. Now another list of subdatasets will show with the names of GeoRaster columns on that table. This is usually a short list, since most users will not have more than one or two GeoRaster columns on the same table.

Click on one of the listed subdatasets and then click on [Select] to choose one of the table/column combinations. The dialog will now show all the rows that contain GeoRaster objects. Note that the subdataset list will now show the Raster Data Table and Raster Id pairs.

În orice moment, intrarea selecției poate fi editată pentru a merge direct la un GeoRaster cunoscut, sau pentru a reveni la început și pentru a selecta un alt nume de tabelă.

Figure Oracle Raster 2:

../../../_images/oracle_select_dialog.png

Selectarea Dalogului Oracle GeoRaster

The selection data entry can also be used to enter a WHERE clause at the end of the identification string (e.g., geor:scott/tiger@orcl,gdal_import,raster,geoid=). See http://www.gdal.org/frmt_georaster.html for more information.

Afișarea GeoRaster-ului

Finally, by selecting a GeoRaster from the list of Raster Data Tables and Raster Ids, the raster image will be loaded into QGIS.

The Select Oracle Spatial GeoRaster dialog can be closed now and the next time it opens, it will keep the same connection and will show the same previous list of subdatasets, making it very easy to open up another image from the same context.

Note

GeoRasters that contain pyramids will display much faster, but the pyramids need to be generated outside of QGIS using Oracle PL/SQL or gdaladdo.

Următorul exemplu folosește gdaladdo:

gdaladdo georaster:scott/tiger@orcl,georaster\_table,georaster,georid=6 -r
nearest 2 4 6 8 16 32

Acesta este un exemplu care folosește PL/SQL:

$ sqlplus scott/tiger
SQL> DECLARE
 gr sdo_georaster;
BEGIN
    SELECT image INTO gr FROM cities WHERE id = 1 FOR UPDATE;
    sdo_geor.generatePyramid(gr, 'rLevel=5, resampling=NN');
    UPDATE cities SET image = gr WHERE id = 1;
    COMMIT;
END;