[Gvsig_english] Re: Gvsig_internacional Digest, Vol 23, Issue 16

Juan Lucas Dominguez Rubio jldominguez at prodevelop.es
Mon Dec 24 09:29:18 CET 2007


Hello, Andrea.
 
You are right, the presence of a table in that list doesn't mean that the user wuill be able to read it. When the user clicks on an item, there is an error message if the user cannot read the table or if none of the geometry columns have a spatial index (this is because gvSIG lets Oracle do the intersections to find out which geometries have to be painted.)
 
We thought about the possibility of ignoring the XXX_SDO_GEOM_METADATA and finding out by other means which tables have geometries, but I think it's a non-standard behavior and adds some risks (will it take very long? what is the full extent of the geometries of that table?)
 
Nevertheless, maybe we could try it with the tables/views of the current user doing what you suggest.
 
Thank you for your detailed comments.
 
 
Regards.
 
Juan Lucas Domínguez Rubio
Prodevelop SL, Valencia (España)
Tlf.: 96.351.06.12 -- Fax: 96.351.09.68
http://www.prodevelop.es <http://www.prodevelop.es/> 

________________________________

De: gvsig_internacional-bounces at runas.cap.gva.es en nombre de Andrea Peri
Enviado el: sáb 22/12/2007 23:22
Para: gvsig_internacional at runas.cap.gva.es
CC: Andrea Peri
Asunto: [Gvsig_english] Re: Gvsig_internacional Digest, Vol 23, Issue 16



Ok,
I understand what you say.

Some suggestions:

using the ALL to find the tables with sdo_geometry you don't know if a table is readable from the account used.
An account can read (select) other tables only if it has a specific grant.


Another think is that you lost the views .
Infact a view that get from two or more tables with sdo_geometry is not reported on all_sdo_geom_metadata.
So I think you must add this control:

select owner, view_name, text from all_views where owner='<owner-name>' order by view_name;

Understand if a view has a table with sdo_geometry is a bit more complex. The text field is the definition of the view, from it you can get table_name and
column_name and check the column_type with this sql:

select all_tab_columns.column_name, all_tab_columns.data_type, etc... from all_tab_columns where all_tab_columns.owner='<owner-name>' and (
(all_tab_columns.data_type='SDO_GEOMETRY') OR (all_tab_columns.data_type='SDO_TOPO_GEOMETRY') );

Just to complete:
There are even the synonym .
they are queryable with the "all_synonym" view.

Regards,
Andrea.


>Hi, Andrea,
 >
>I mean that we can read the view ALL... to find out which tables are available, not only from the user's schema, so the user will be able to add to his view
>tables from other schemas, and we will write to USER... when the user stores a vector layer as an Oracle table.
>
>When you use the "GeoDB" wizard to add a layer, the list of available tables you see is the content of ALL... (I understand that you can see that list.)
>
>Regards,



_______________________________________________
Gvsig_internacional mailing list
Gvsig_internacional at runas.cap.gva.es
http://runas.cap.gva.es/mailman/listinfo/gvsig_internacional


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/ms-tnef
Size: 6337 bytes
Desc: not available
Url : http://runas.cap.gva.es/pipermail/gvsig_internacional/attachments/20071224/5dce99a8/attachment-0001.bin


More information about the Gvsig_internacional mailing list