ODBC Driver Support

You might ask, “Why doesn’t Iron Speed Designer use ODBC to support all databases?”  There are several reasons.

Schema querying is not supported by ODBC

Iron Speed Designer uses the GetOLEDBSchemaTable() method in OLEDB to query the database for its schema.  Iron Speed Designer needs the database schema information in order to create the Data Access Layer classes for your application.  Such a schema querying mechanism is not available in ODBC.

In fact, many databases do not even provide a GetOLEDBSchemaTable() method for schema querying, so we must write custom schema querying code for these databases.  Specifically, Iron Speed Designer queries for information about:

SQL syntax varies from database to database

Iron Speed Designer creates SQL for your application.  Unfortunately, the SQL language syntax varies from database to database, requiring us to implement custom SQL for each database.  One simple example of SQL syntax variance is the characters used to enclose table names:

Database

Table Name Syntax

Microsoft SQL Server

[Customers]  (Square brackets)

Oracle

“Customers”  (Double quote characters)

Microsoft Access

‘Customers’  (Single quote characters)

MySQL

`Customers`  (Accent grave characters)

Because of this SQL syntax variance, it is impossible to use a single generic database driver approach.

See Also

Transaction Management