s o f t w a r e die st_shapelib kann mehrfach aufgeführt werden. bitte beachten sie, dass sie im pfad doppelte backslashes ver- wenden müssen. ein entsprechender eintrag unter linux oder unix würde so aussehen: set extproc_dlls=only: / user / esrilibs / libst_ shapelib.so: / user / esrilibs2 / libst_shapelib.so: / user / esrilibs / libst_raster_ora.so bitte beachten sie auch folgendes: unter windows darf die dll zwar in einem ordner mit leerzeichen im namen liegen (zum beispiel „program files“). bei der angabe des pfades in extproc.ora (und dem view „user_libraries“, siehe nächs- ter punkt) muss der ordnername jedoch durch den kurzna- men ersetzt werden. zum beispiel sollte anstelle von „pro- gram files“ dann „progra~1“ verwendet werden. hierzu ein tipp am rande: mit dem dos-befehl „dir /x“ können sie sich in der kommandozeile die ordner und ihre kurznamen anzeigen lassen. der view „user_libraries“ im schema sde mit der datei extproc.ora wird/werden der datenbank- instanz die st_shapelib-bibliothek (en) bekannt gegeben. durch die einträge im view „user_libraries“ des user sde wird jeder datenbank genau eine st_shapelib zugeordnet. eine datenbankinstanz kann mehrere datenbanken haben (pluggable databases). pro datenbankinstanz können meh- rere st_shapelib-dateien genutzt werden, pro datenbank (pluggable database) darf allerdings nur eine st_shapelib konfiguriert sein. der eintrag im view „user_libraries“ muss auch in der datei extproc.ora vorhanden sein. um zu überprüfen, welcher eintrag in „user_libraries“ vor- handen ist, eignet sich folgende abfrage: select file_spec from user_libraries where library_ name = ‘st_shapelib‘; um eine st_shapelib in „user_libraries“ einzutragen, können sie folgendes statement nutzen: create or replace library st_shapelib as ‘c: \mylibraries\st_shapelib.dll‘; bitte beachten sie, dass nach dem pl/sql-code noch ein schrägstrich (“/“) kommen muss, um das statement auszu- führen. der pfad muss natürlich ihren anforderungen ange- passt werden. überprüfen der konfiguration um sicherzustellen, dass die st_shapelib korrekt eingebun- den ist, eignen sich einfache abfragen in sql. es werden dazu keine räumlichen daten benötigt, für die abfrage wird die oracle-tabelle „dual“ genutzt. eine mögliche abfrage ist: select sde.st_point (0,0,0) from dual; das ergebnis sieht in sql plus wie folgt aus: sql > select sde.st_point (0,0,0) from dual; sde.st_point (0,0,0) (entity, numpts, minx, miny, maxx, maxy, minz, maxz, minm, ma -------------------------------------------------------------------------------- st_point (1, 1, 0, 0, 0, 0, null, null, null, null, 0, 0, 0, ‚0c000000010000008080dd9da4178080dd9da417‘) sollte die st_shapelib nicht ordnungsgemäß eingebunden sein, erhalten sie eine fehlermeldung wie zum beispiel: fehler in zeile 1: ora-06520: pl /sql: fehler beim laden der externen library ora-06522: unable to load dll ora-06512: in „sde.st_geometry_shapelib_pkg“, zeile 12 ora-06512: in „sde.st_point“, zeile 181 weitere information zu diesem thema finden sie auch unter: support.esri.com/technical-article/000011293 es sei an dieser stelle noch vermerkt, dass nicht alle räumli- chen abfragen zum überprüfen der konfiguration geeignet sind. folgende abfrage liefert zum beispiel immer ein er- gebnis, auch wenn die st_shapelib nicht eingebunden ist: select sde.st_area (shape) from sde.gdb_items; weitere informationen zur konfiguration von extproc.ora und st_shapelib finden sie unter: http://arcg.is/2mujpz4 ralf grüttner esri deutschland gmbh 61