 |
Specify
the schema of database tables and views (using two and three-part naming) |
 |
Handle dynamic
parameters, including arrays of parameters by calling f90SQLBindParameter
and f90SQLNumParams and specify a bind offset. |
 |
Use not
only input parameters, but also output and input/output parameters, and
result values of stored procedures. |
 |
Use bookmarks,
including retrieving bookmarks by calling f90SQLDescribeCol and f90SQLColAttribute
on column number 0; fetching based on a bookmark by calling f90SQLFetchScroll
with the FetchOrientation argument set to SQL_FETCH_BOOKMARK; and
update, delete, and fetch by bookmark operations by calling f90SQLBulkOperations
with the Operation argument set to SQL_UPDATE_BY_BOOKMARK, SQL_DELETE_BY_BOOKMARK,
or SQL_FETCH_BY_BOOKMARK. |
 |
Use the
data-at-execution dialog, involving calls to f90SQLParamData and f90SQLPutData. |
 |
Retrieve
advanced information on the data dictionary, by calling f90SQLColumnPrivileges,
f90SQLForeignKeys, and f90SQLTablePrivileges |
 |
Invoke true
asynchronous execution of ODBC functions, where applicable ODBC functions
are all synchronous or all asynchronous on a given connection or enable
asynchronous execution of ODBC functions for specified individual statements |
 |
Use scrollable
cursors, and thereby achieve access to a result set in methods other than
forward-only, by calling f90SQLFetchScroll with the FetchOrientation
argument other than SQL_FETCH_NEXT. |
 |
Obtain primary
keys of tables, by calling f90SQLPrimaryKeys. Manage data sources and
connections, by calling f90SQLConnect, f90SQLDataSources, f90SQLDisconnect,
and f90SQLDriverConnect. |
 |
Obtain information
on drivers, no matter which ODBC level they support, by calling f90SQLDrivers. |
 |
Obtain the
SQL_ROWVER row-identifying column of tables, by calling f90SQLSpecialColumns
with parameter SQL_BEST_ROWID. |
 |
Use stored
procedures, through the ODBC escape sequence for procedure calls; and
query the data dictionary regarding stored procedures, by calling f90SQLProcedureColumns
and f90SQLProcedures. |
 |
Connect
to a data source by interactively browsing the available servers, by calling
f90SQLBrowseConnect. |
 |
Prepare
and execute SQL statements, by calling f90SQLExecDirect, f90SQLExecute,
and f90SQLPrepare |
 |
Use ODBC
functions instead of SQL statements to perform additional database operations,
by calling f90SQLBulkOperations with SQL_ADD, or f90SQLSetPos with SQL_POSITION,
SQL_REFRESH, SQL_DELETE or SQL_UPDATE. |
 |
Gain access
to the contents of multiple result sets generated by batches and stored
procedures, by calling f90SQLMoreResults. |
 |
Obtain an
unbound column in parts, by calling f90SQLGetData. |
 |
Delimit
transactions spanning several ODBC functions, with true atomicity and
the ability to specify SQL_ROLLBACK in f90SQLEndTran. |
 |
Set the
SQL_ATTR_CONCURRENCY statement attribute to at least one value other than
SQL_CONCUR_READ_ONLY. |
 |
Manipulate
certain fields of descriptors, by calling f90SQLCopyDesc, f90SQLGetDescField,
f90SQLGetDescRec, f90SQLSetDescField and f90SQLSetDescRec. |
 |
The ability
to time out login request and SQL queries (SQL_ATTR_LOGIN_TIMEOUT and
SQL_ATTR_QUERY_TIMEOUT). |
 |
The ability
to change the default isolation level; the ability to execute transactions
with the “serializable” level of isolation. |