Vers le bas de la documentation SQLNativeSql() function, il semble que les pilotes ODBC exécutent la traduction.Profiter des capacités de traduction ODBC
Il dit:
Voici quelques exemples de ce que SQLNativeSql pourrait revenir pour la chaîne SQL entrée suivante contenant la fonction convert scalaire. On suppose que la empid colonne est de type ENTIER dans la source de données:SELECT { fn CONVERT (empid, SQL_SMALLINT) } FROM employeeUn pilote pour Microsoft SQL Server peut renvoyer la traduction chaîne SQL suivante:SELECT convert (smallint, empid) FROM employeeUn pilote pour ORACLE serveur peut retourner la traduction chaîne SQL suivante :SELECT to_number (empid) FROM employeeUn pilote pour Ingres peut renvoyer la traduction chaîne SQL suivante:SELECT int2 (empid) FROM employee
Est-ce vraiment vrai? Peut ODBC vraiment traduire les requêtes SQL afin que, idéalement, votre application pourrait fonctionner sur n'importe quel système de base de données en envoyant des requêtes via ODBC?
En pratique, cela fonctionne-t-il réellement? Où pouvez-vous trouver la liste "ODBC SQL Syntax"?