English

FAQ: What level of SQL query can I pass to an ESRI data source using the ESRI OLE DB provider?

Question

What level of SQL query can I pass to an ESRI data source using the ESRI OLE DB provider?

Answer

Coverage, shapefile, personal, and ArcSDE geodatabases do not currently support SQL clauses and functions such as Order By, Group By, Distinct, and so forth, or nested subqueries. Select statements with a where clause, which may include wild card characters, are all that are currently supported.

DMBS Insert/Update/Delete SQL operations applied directly against an ADO connection to a personal or ArcSDE geodatabase feature class or registered table are NOT supported and are not recommended unless you are very familiar with the data structure at source (such as associated indices to be maintained).

However, such operations are supported against unregistered tables. The ADO command syntax for this operation is:

Code:
<ADO connection obj>.Execute <SQL statement>

Neither of the file-based data sources (shapefiles and coverages) support Insert/Update/Delete commands applied against the ADO connection. All updates to these data sources should be undertaken via the ADO recordset.