Constructing Interoperable SQL Statements
At this point, the application writer must make some decisions about what
language features are required and what features are optional. Generally, if a
particular driver does not support a feature required by the application, the
application simply refuses to run with that driver. However, if the feature is
optional, the application can work around the feature. For example, it might disable
those parts of the interface that allow the user to use the feature.
To determine which features are supported, applications start by calling SQLGetInfo with the SQL_SQL_CONFORMANCE option. The SQL conformance level gives the
application a broad view of what SQL is supported. To refine this view, the
application calls SQLGetInfo with any of a number of other options. For a complete list of these options,
see the SQLGetInfo function description. Finally, SQLGetTypeInfo returns information about the data types supported by the data source.
The following sections list a number of things that applications should watch
for when constructing interoperable SQL statements.