新ドライバは、次の関数について準拠しているODBC API準拠レベルが旧ドライバとは異なります。
- ステートメントの影響を受ける行がない場合のSQLExecuteおよびSQLExecDirect。
ステートメントの影響する行が0個の場合、旧ドライバはSQL_SUCCESSを返していました。新ドライバは、ODBC 2.xの使用時にはSQL_SUCCESSを、ODBC 3.xの使用時にはSQL_NO_DATAを返します。
詳細については、ODBCプログラマ リファレンス: https://docs.microsoft.com/ja-jp/sql/odbc/reference/develop-app/sql-no-dataのSQL_NO_DATAを参照してください。
- 空のステートメントが渡された場合のSQLPrepare、SQLExecute、SQLExecDirect。
SQLPrepare、SQLExecute、またはSQLExecDirectに空のSQL文が渡された場合、旧ドライバはSQL_SUCCESSを返していました。新ドライバは、SQLState 42000とともにSQL_ERRORを返します。