SQLPrepare Frage zu UPDATE!



  • Hallo,

    habe mal wieder eine Frage. Diesmal zu der Methode SQLPrepare().

    Habe schon Erfahrung mit dieser Methode mit dem

    INSERT INTO tabelle VALUES (?,?,?)

    Befehl machen können, aber wie mache ich das mit dem UPDATE Befehl?

    Die ? stehen ja als Platzhalter, also habe ich es mit folgendem Code versucht:

    string ausfuehren = "UPDATE profile SET `Fahrzeug` = ? , WHERE `Index` = 1";
    
    	char *ch = new char[ausfuehren.length()+1]; // Ermitllung der Größe des Strings
    	strcpy(ch, ausfuehren.c_str());
    
    	char fahrzeug1[30];							
    
        SQLINTEGER lager1 = SQL_NTS;			
    
    	retcode = SQLPrepare(hstmt, (UCHAR FAR *) ch, SQL_NTS);			// Vorbereitung
    	if (retcode == SQL_ERROR)
    		{
    			MessageBox(NULL,"SQL Prepare von Profiele läuft nicht!","MySQL",MB_OK);
    		}
    
    	SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, 30,0, &fahrzeug1, 0, &lager1);		
    
    	lstrcpy(fahrzeug1, neuesFahrzeug);					   
    
    	SQLExecute(hstmt);
    
    	SQLEndTran(SQL_HANDLE_DBC, hdbc, SQL_COMMIT);
    

    Ich bin mir nicht sicher wie ich es anwenden soll, so funktioniert es leider nicht.

    Vielen Dank für eure Hilfe.
    -Gruß PatrickR


Anmelden zum Antworten