New answers tagged oracle
If you use a direct connection, create a connection file to your database in Catalog window > Database Connections > Add DataBase Connection. In this case your Instance would be something like sde:oracle11g:servername If you use an ArcSDE Service connection (not direct connection), create a connection with Create ArcSDE Connection File geoprocessing ...
For VIEWS you have to define the column which uniquely identify features for the layer, try to add: uri.setKeyColumn("your_unique_field")
The key is to build a function that returns a result set that can be queried as if it were a table. In the function, include a call to set_current_version (see line 6 below). SQL> create type emp_obj is object (empno number, ename varchar2(10)); 2 / Type created. SQL> create type emp_tab is table of emp_obj; 2 / Type created. SQL> create ...
The solution depends on the geometry of your layer. Point Geometries For points you can access the X and Y co-ordinates directly: update TABLE1 s1 set X = s1.GEOMETRY.SDO_POINT.x,y=s1.geometry.sdo_point.y Polygon, Multi-point SDO_UTIL.GETVERTICES will return all vertices of your geometry, and your previous query would fail if the geometry had more ...
If you want these restrictions to apply at the database level then that would likely be where you would have to implement them, ArcGIS or ArcSDE could not prevent a user with SQL access from making updates. For an enterprise solution Oracle offer Virtual Private Database that adds row and column granularity to database permissions, however this is likely ...
You can set a field to be read only in ArcMap. When in table view mode click on a header and look at it's properties. A quick search of the ArcObjects API and it's the interface IFieldInfo3 that can set this property. You can get a handle on this via the ILayerFields interface.
You can check the SDO metadata table to get spatial information: select * from MDSYS.ALL_SDO_GEOM_METADATA where TABLE_NAME = 'tablename'
Top 50 recent answers are included