Bonjour,

Je recherche une bonne documentation sur ODBC ...
Je programme en C avec Visual C++, et je souhaite modifier des programmes dont la partie acces à ODBC ne semble plus d'actualité ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
retcode = SQLAllocEnv(&henv);
                if (retcode == SQL_SUCCESS) {
                  retcode = SQLAllocConnect (henv, &hdbc);
                  if (retcode == SQL_SUCCESS) {
                    retcode = SQLConnect (hdbc, DataBaseUsed, SQL_NTS, "", SQL_NTS, "", SQL_NTS);
                    if (retcode == SQL_SUCCESS) {
                      nindex=0;
                      retcode = SQLAllocStmt (hdbc, &hstmt);
                      if ((retcode == SQL_SUCCESS) || (retcode == SQL_SUCCESS_WITH_INFO))
                      {
                        strcpy(selection, critere);
                        strcpy(w_res, " ");
                        strcpy(Sqlstmnt, "SELECT * FROM MOUVEMENTS WHERE (OP_COMPTE = ?) ORDER BY OP_CLE");
                        retcode = SQLPrepare (hstmt, Sqlstmnt, SQL_NTS);
                        if ((retcode == SQL_SUCCESS) || (retcode == SQL_SUCCESS_WITH_INFO))
                        {
                          if ((SQLSetParam (hstmt,1,SQL_C_CHAR,SQL_CHAR,sizeof(selection),0,selection,NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,1,SQL_C_CHAR, mvt.cle_mvt ,sizeof(mvt.cle_mvt),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,2,SQL_C_CHAR,mvt.compte_courrant,sizeof(mvt.compte_courrant),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,3,SQL_C_CHAR,mvt.codop_mvt,sizeof(mvt.codop_mvt),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,4,SQL_C_CHAR,mvt.date_amj,sizeof(mvt.date_amj),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,5,SQL_C_CHAR,mvt.num_cheque,sizeof(mvt.num_cheque),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,6,SQL_C_LONG,&mvt.Lmontant,0,NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,7,SQL_C_CHAR,mvt.libel_operat,sizeof(mvt.libel_operat),NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,8,SQL_C_SHORT,&mvt.tophisto,0,NULL) == SQL_SUCCESS)
                          &&  (SQLBindCol (hstmt,9,SQL_C_LONG,&mvt.Lsolde_mvt,0,NULL) == SQL_SUCCESS))
                          {
Merci.