Select to view content in your preferred language

What good is OLE DB Connections if you can't edit Access files directly.

1232
8
10-24-2011 08:30 PM
NickSchmidt
Deactivated User
So I am finally figuring out how to use OLE DB connections in ArcMap, but I have a few concerns:

1. WHY do I need to use an OLE DB connection at all?  The Access file (.mdb) appears as a personal geodatabase, with the actual data table shown as a feature class.  I can easily drag the feature class into the data frame.  Is there something else that the OLE DB connection does?  Does it keep the most recent up-to-date data available in real time (even if it is being edited by someone else)?  I assume the personal geodatabase/feature classes by themselves are static which need to be refreshed manually in the Catalog window. 
2. First I find out that OLE DB files don't have ObjectID fields, and ObjectID fields are needed to edit features in the attribute tables.  I use the Make Query Table geoprocessing tool to create an ObjectID field.  Is this new table only temporary?  Well, even after I added the ObjectID field I read further that you can't edit Access files anyway.  Well, I can easily edit the table shown as just feature class without the OLE DB connection, so what's the point in even having the OLE DB connection? Is it just as an alternative to ArcGIS query layers?  I don't do too much querying if at all, so it just seems more practical NOT to use an OLE DB connection. 

What are your thoughts?
0 Kudos
8 Replies
ModyBuchbinder
Esri Regular Contributor
Hi Nick

I think the main use of OLEDB is to access databases that does not have a direct connect in ArcGIS. OLEDB connections exists for many types of data that ArcGIS can not read directly.
The only reason to use OLEDB for access or Oracle database that has SDE is to look into the metadata files �?? you should not update these so the read only access is not a limitation.

Have Fun
Mody
0 Kudos
NickSchmidt
Deactivated User
I think the main use of OLEDB is to access databases that does not have a direct connect in ArcGIS.

Do you mean "access" as in to "get access to"?  Why not just create a new connection on a folder in ArcCatalog or the Catalog window?

OLEDB connections exists for many types of data that ArcGIS can not read directly.

Can you give some other examples?

The only reason to use OLEDB for access or Oracle database that has SDE is to look into the metadata files �?? you should not update these so the read only access is not a limitation.

Metadata files are usually stored in a text file, correct?  I am still learning this software.  IF I want to make changes to the Access database should I make the changes in Access and save them in Access?  I also read that if you want to make changes to the geodatabase to do it directly in ArcGIS.  What happens if I have feature classes that use Access data, and that data is constantly changing.  How do I update these feature classes?

Thanks again-

Have Fun
Mody
0 Kudos
RobertHu
Emerging Contributor
Hi Nick,

I've seen many times in this forum ESRI experts encourage users to use file geodatabase, especially if you just start exploring geodatabase. If I remember it right, the personal geodatabase (Access) will be depracated when ArcGIS moves in full 64-bit.

Thanks!
0 Kudos
NickSchmidt
Deactivated User
How will I work with Access data then?
0 Kudos
ModyBuchbinder
Esri Regular Contributor
Hi Nick

When I say "access" I mean you can read and query the tables but not necessary update them.

If you do not have ArcSDE you can see oracle tables is using OLEDB.
If ESRI will drop the support for mdb file you can still see them using OLEDB (but update them using Microsoft Access).
If you have, for example, Sybase database you can see it using OLEDB.

The metadata for ArcSDE is tables inside the SDE schema. When you use the ArcSDE connections they are not visible. If you use OLEDB connection you can see them just like any other table.

Mody
0 Kudos
VinceAngelo
Esri Esteemed Contributor
Note that the SDE tables are hidden from ArcGIS connections mostly for aesthetic reasons,
but it's partly so that folks aren't inclined to try editing them outside the supported protocols
of the geodatabase APIs.  It's generally unwise (and very unsupported) to alter SDE user
tables via OLE-DB (or the ArcSDE API, for that matter).  Even the use of Access to manipulate
(now deprecated) personal geodatabases is technically unsupported (even though it has been
common and, for the most part, hasn't corrupted data).

- V
0 Kudos
NickSchmidt
Deactivated User
I don't work with ArcSDE at all, just ArcEditor right now.  So again, what is the point of having an OLE DB connection anyway?
0 Kudos
VinceAngelo
Esri Esteemed Contributor
I think it's there for reverse compatibility to the days when OLE was all there was.

- V
0 Kudos