bonjour tout le monde, voil� ce qui me pose pas mal de probl�me depuis un bout de temps.
je travaille sous visualc++ (API win32), et je dois cr�er une base de donn�es, dans laquelle certaines tables ont plus de 100 champs (je sais je pourrais faire des relations entre diff�rentes tables mais mon tuteur ne veut qu'une seule table o� tout apparait, au cas o� il irait voir dans access). En fait, au lancement de mon appli, je r�cup�re le contenu de plusieurs EditBox pour l'ins�rer dans plusieurs cellules de ma table, �a je sais faire ou du moins jusqu'� un certain nombre de param�tres.
voici l'exemple:

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
 
CHAR szParam1[TAILLE_BUFFER], szParam2[TAILLE_BUFFER],……….
 
lstrcpy(szParam1, szBuffer);
 
GetWindowText(GetDlgItem(hwndDlg, IDC_EDITLIGNE2), szParam2, TAILLE_BUFFER);
 
Etc…….
 
 
 
if(strcmp(szParam1, "SPB_150_2_AL")==0) 
 
{
            //SPB_150_2_AL est le nom de ma table
 
 
            wsprintf(szBuffer, "INSERT INTO SPB_150_2_AL
 
(Reference_programme, Numero_OF,Numero_tache, Surface_usinee, Reference_individuelle_piece, Cycle_de_taillage, SENS_MOLETTE, VITESSE_MOLETTE, VITESSE_TAILLAGE_FORMATION, VITESSE_TAILLAGE_EBAUCHE, VITESSE_TAILLAGE_FINITION, VITESSE_MEULE_FORMATION, VITESSE_MEULE_DIAMANTAGE, PRISE_PASSE_FORMATION_X, PRISE_PASSE_EBAUCHE_X, PRISE_PASSE_FINITION_X, PRISE_PASSE_FORMATION_Z, PRISE_PASSE_EBAUCHE_Z, PRISE_PASSE_FINITION_Z, PROFONDEUR_FORMATION, NB_PASSE_DIAMANTAGE) VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",szParam1, szParam2, szParam3, szParam4, szParam5, szParam6, szParam7, szParam8, szParam9, szParam10, szParam11, szParam12, szParam13, szParam14, szParam15, szParam16, szParam17, szParam18, szParam19, szParam20, szParam21);
 
}
Comme vous pouvez le voir j'ai d�j� un grand nombre de param�tres mais jusque l� ca marche, par contre si j'en rajoute un (et j'en ai encore au moins 60), message d'erreur pendant l'ex�cution "erreur de syntaxe dans INSERT INTO" (et pourtant mon appli se lance qd m�me)!!
je suis bien emmerd� avec �a.
Alors j'avais pens� refaire un "wsprintf(szBuffer, "INSERT INTO dans la m�me table mais cette fois ci dans les colonnes suivantes:





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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
if(strcmp(szParam1, "SPB_150_2_AL")==0) 
 
{
            //SPB_150_2_AL est le nom de ma table
 
 
            wsprintf(szBuffer, "INSERT INTO SPB_150_2_AL
 
(Reference_programme,Numero_OF,.............) VALUES ('%s','%s',..........)",szParam1,szParam2,..........);
 
}   
 
          try 
 
          {
 
          if(pRs->State != adStateClosed)
 
            pRs->Close();       
 
            pRs->Open(szBuffer, _variant_t((IDispatch *) pConn, true), adOpenDynamic, adLockReadOnly, adCmdText);
 
          }
 
          catch(_com_error &e) 
 
          {
 
            MessageBox(hwndDlg, e.Description(), "Erreur ExecuteRequete.", MB_ICONEXCLAMATION);
 
          }
 
 
if(strcmp(szParam1, "SPB_150_2_AL")==0) 
 
{
            //SPB_150_2_AL est le nom de ma table
 
 
            wsprintf(szBuffer, "INSERT INTO SPB_150_2_AL
 
(Cycle_d_usinage,SURFACE,POSITION,.............) VALUES ('%s','%s','%s'..........)",szParam22,szParam23,szParam24,..........);
 
}   
 
          try 
 
          {
 
          if(pRs->State != adStateClosed)
 
            pRs->Close();       
 
            pRs->Open(szBuffer, _variant_t((IDispatch *) pConn, true), adOpenDynamic, adLockReadOnly, adCmdText);
 
          }
 
          catch(_com_error &e) 
 
          {
 
            MessageBox(hwndDlg, e.Description(), "Erreur ExecuteRequete.", MB_ICONEXCLAMATION);
 
          }
Mais le probl�me maintenant c'est que les param�tres de ma deuxi�me requ�te sont enregistr�s dans ma table mais � la ligne suivante (emb�tant lorsque je veux l'afficher dans une liste), alors que je voudrais que tout soit sur la m�me ligne d'enregistrement.
Comment je peux faire?
Si quelqu'un a d�j� rencontr� ce probl�me, ca me serait vraiment tr�s utile,
merci bcp romy
[Pense a mettre la balise de code ,Merci Farscape]