SQLWays effectue la conversion d'Oracle Pro*C vers ODBC.
L'outil de migration d'API de base de données SQLWays détècte automatiquement les instructions EXEC SQL et les variables hôtes, il les convertit vers l'API ODBC et insère le code additionnel.
Paramètres de la Conversion
SQLWays effectue des actions suivantes:
- Ajoute des fichiers pour les fonctions et les structures API ODBC:
- Convertit la connection de base de données Oracle Pro*C - EXEC SQL CONNECT TO vers une connection ODBC de la façon suivante:
- allouer environment handle
- allouer connection handle
- Établit une connexion en utilisant les fonctions:
- SQLConnect()
- SQLDriverConnect()
- SQLBrowseConnect()
- Convertit les instructions Oracle Pro*C opérant les données correspondant aux fonctions API ODBC:
- SQLPrepare()
- SQLExecute()
- SQLBindParameter()
- SQLFetch(), etc.
- Convertit DDL et les instructions DML vers una chaîne de requête.
L'exemple Oracle Pro*C (fichier: simple.pc):
EXEC SQL include sqlca;
int main()
{
EXEC SQL DECLARE cur_name CURSOR FOR
SELECT NVL(COL_NAME,' ')
FROM TBL_NAME;
EXEC SQL OPEN cur_name;
return 0;
}
Après la conversion, le fichier simple.pc est converti vers simple.cpp (utilisant une BD SQL Server):
#include <sql.h>
#include sqlext.h>
SQLHENV env;
int main()
{
SQLHSTMT cur_name;
sqlca.sqlcode = SQLAllocStmt(connection,&cur_name);
sqlca.sqlcode = SQLPrepare(cur_name,
"SELECT ISNULL(COL_NAME,' ') "\
" FROM TBL_NAME",SQL_NTS);
sqlca.sqlcode = SQLExecute(cur_name);
return 0;
}
SQLWays génère la structure sqlca pour reproduire la logique d'application:
struct
{
SQLRETURN sqlcode;
SQLCHAR sqlerrm[SQL_MAX_MESSAGE_LENGTH+1];
SQLCHAR sqlstate[SQL_SQLSTATE_SIZE+1];
SQLSMALLINT length;
} sqlca;
SQLWays est une solution universelle puissante et il est également utilisée pour la migration de base de données et d'application.
Veuillez remplir le questionnaire pour initier la discussion sur votre projet ou obtenir une estimation
Pour commander une démo du logiciel de migration SQLWays veuillez demander une démo. Pour en savoir plus sur notre politique de prix veuillez demander un devis. Vous pouvez aussi nous contacter via courrier à
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
ou
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
et obtenir une réponse professionnelle à toute question.
|