For efficiency and programming convenience (CAD Client's connection speed is a bit slow), in query object attribute data, it is often related to Oracle to connect directly to Oracle using OLEDB. However, it is found that occasionally the problem that cannot obtain object properties occasionally. After analysis, the problem is found in the version.
SDE provides version management capabilities, and users can easily perform graphical approval, rollback and other operations. However, this feature requires other tables in Oracle, mainly including A tables and d tables. After ArcSDE establishes a version, the modification is achieved by the corresponding A table and D table. Since only the OLEDB is directly used to query the unmodified version base table, the information of the newly added or modified object after the creation of the version cannot be retrieved.
See the specific mechanism of the version can be found: http://gis.esri.com/library/Userconf/Proc01/professional/papers/pap232/p232.htm
There are two types of options to resolve this issue: Modify the system query mechanism, or establish a related view in Oracle. If a modified system is used, it is considered that the C API rewrite code provided by SDE should be considered, and the relative modification should be considered. If a method of establishing a view is used, the instruction SDETABLE can be used, and the operation is set to create_mv_view, and the corresponding view can be established for the specified table, and the relevant permissions can be given to the corresponding Oracle account. However, each registration is a version of the feature that needs to establish a corresponding view to avoid the above problems. The following is a simple column of several solutions to the advantages and disadvantages.
CAD Client C API OLEDB query speed is slow to develop code is whether it is adaptive, good, repair this problem, slow slow