Bonjour, j'ai un programme qui me permet de me connecter à une base sql server mais le problème c'est qu'il me manque 1 champ à compléter et que je ne sais pas à quoi il correspond.
Voici mon code :
#include <windows.h>
#include <sql.h>
#include <sqlext.h>
#include <sqltypes.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include
#define MAIN_LEN 80
SQLHENV henv;
SQLHDBC hdbc;
SQLHSTMT hstmt;
using namespace std;
void main ()
{
SQLRETURN retcode;
SQLCHAR COL2[MAIN_LEN+1];
// Exemple de requete
char requete[1024+1]="SELECT * FROM TABLE_TEST";
char Serveur[MAIN_LEN+1]="";
char Login[MAIN_LEN+1]="USER-TEST";
char Pwd[MAIN_LEN+1]="azerty__00";
// Connexion à la base de données
retcode=SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);
if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
retcode=SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3,0);
if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
retcode=SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
else
{
printf("Erreur sur l'instruction SQLAllocHandle1 !\n");
}
// Vérification du Lien ODBC, Login Et Pwd
if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
retcode=SQLConnect(hdbc, (SQLCHAR*)Serveur, SQL_NTS, (SQLCHAR*)Login, SQL_NTS, (SQLCHAR*)Pwd, SQL_NTS);
else
{
printf("Erreur sur l'instruction SQLSetEnvAttr !\n");
}
if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
retcode=SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);
else
{
printf("Erreur sur l'instruction SQLConnect !\n");
cout<<"ret :"<<retcode<<"\n";
}
// Execution de la requete
if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
retcode=SQLExecDirect(hstmt, (SQLCHAR*)requete, SQL_NTS);
else
{
printf("Erreur sur l'instruction SQLAllocHandle2 !\n");
cout<<"ret :"<<retcode<<"\n";
}
if (retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
{
while (TRUE)
{
retcode = SQLFetch(hstmt);
if (retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)
{
SQLGetData(hstmt, 2,SQL_C_CHAR, COL2, sizeof(COL2),NULL);
cout<<"col2 :"<<COL2<<"\n";
}
}
}
// Déconnexion
SQLFreeStmt(hstmt, SQL_DROP);
SQLDisconnect(hdbc);
SQLFreeConnect(hdbc);
getchar ();
}
Si vous regardez bien j'ai un champ vide a la ligne 25 : "char Serveur[MAIN_LEN+1]="";
Mais à quoi correspond ce champ ?? que dois-je lui mettre dedans. Merci d'avance pour vos réponses.