According to MSDN docs for SQLSetStmtAttr, if you try to request a
authorDave Page <dpage@pgadmin.org>
Thu, 30 Jun 2005 09:30:38 +0000 (09:30 +0000)
committerDave Page <dpage@pgadmin.org>
Thu, 30 Jun 2005 09:30:38 +0000 (09:30 +0000)
commit581bb23b97cb9eb547974e2ba5bebc5ce2961226
treede10ab69feef9ce3fa60fad6a4f760904c80c466
parentbc86525e52be27e781cbf03b2a0d02037333671d
According to MSDN docs for SQLSetStmtAttr, if you try to request a
cursor type which isn't supported, the driver should fall back to a
supported type, set an appropriate SQLState and return
SQL_SUCCESS_WITH_INFO.

Currently, if a SQL_ATTR_CURSOR_TYPE of SQL_CURSOR_DYNAMIC is requested,
we fall back to SQL_CURSOR_FORWARD_ONLY and no warning is given; this is
simply because we don't explicitly check for SQL_CURSOR_DYNAMIC.

A better solution is to check for SQL_CURSOR_DYNAMIC, fall back to
SQL_CURSOR_KEYSET_DRIVEN and set a warning accordingly.

Also, currently if SQL_CURSOR_KEYSET_DRIVEN is requested and only static
cursors are supported, we fall back without returning a warning.

[Mark G. Adams]
options.c