L'un des SELECT échoue en utilisant unixOdbc – SQLSTATE : état du slider invalide

Je cours Ubuntu 13.10 avec FreeTDS et ODBC (package: php5-odbc) installé. J'utilise tds version = 8.0, mais aussi essayé tds version = 7.2.

J'utilise PDO et ceci est mon DSN:

$dsn = sprintf('odbc:Driver=FreeTDS;Server=%s;Port=1433;Database=%s', DB_SQL_SERVERNAME, DB_DB_NAME); 

Je me connecte à une instance MSSQL et j'effectue des requêtes INSERT / SELECT en utilisant des transactions, mais je n'arrive pas à comprendre pourquoi cette requête échoue:

 SELECT id FROM tblColumns WHERE siteID = 10063 AND typeID = 1000 AND extendedTypeID = 18 AND label = 'RwThiFc85A' 

donner une erreur:

SQLSTATE [24000]: État du slider invalide: 0 [FreeTDS] [SQL Server] État du slider invalide (SQLExecute [0] at /build/buildd/php5-5.5.3+dfsg/ext/pdo_odbc/odbc_stmt.c:254)

Je cours des packages de requêtes similaires avant et ils sont bien exécutés, par exemple:

 SELECT id FROM tblColumns WHERE siteID = 10063 AND typeID = 1000 AND extendedTypeID = 3 AND label = 'VwThiFc91B' 

Avez-vous des idées pourquoi cela arrive?

Je n'ai pas eu de tels problèmes avec dblib et sqlsrv, mais maintenant je suis sur Unix et je ne peux pas utiliser sqlsrv, et en raison de problèmes avec l'enencoding dblib UTF-8, j'essaie d'utiliser ODBC.

Il semble que vous avez deux sets de résultats différents ouverts en même time. Vous devez terminer le traitement de votre premier ResultSet et le fermer afin de pouvoir réutiliser l'instruction pour créer le second ResultSet.