-         
+ Antworten
Ergebnis 1 bis 3 von 3

Thema: problem bei der erstellung von strings

  1. #1
    willibald
    Gast

    problem bei der erstellung von strings

    Moin,

    ich habe ein Problem und zwar gibt folgender Code

    Code:
    char *query1 = "SELECT Datum,Stunde,relFeuchte20cm,Niederschlag,BenetzungStoff,Temp20cm FROM Bestandesw\
    etter WHERE Standort='";
      char *query2 = "' and Datum>= '";
      char *query3 = "' and Datum<='";
      char *query4 = "' ORDER BY Datum,Stunde";
    
      query = (char *)malloc((strlen(query1) + strlen(query2)+ strlen(query3)+ strlen(query4) + 1)*
    			sizeof(char));
    
      strcat(query,query1); strcat(query,Standort);
      strcat(query,query2); strcat(query,Beginn);
      strcat(query,query3); strcat(query,Ende);
      strcat(query,query4);
    
      if(mysql_query(conn,query)){...
    folgenden Fehler:

    Code:
    mhenze@debian:~/c_Programme$ GCC -o zwei -I /usr/include/mysql epidemRegression1.c -lmysqlclient -lz
    mhenze@debian:~/c_Programme$ ./zwei 
    You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'd"@d"@SELECT Datum,Stunde,relFeuchte20cm,Niederschlag,Benetzu
    d"@d"@SELECT Datum,Stunde,relFeuchte20cm,Niederschlag,BenetzungStoff,Temp20cm FROM Bestandeswetter WHERE Standort='Eesch' and Datum>= '2002-07-20' and Datum<='2002-07-23' ORDER BY Datum,Stunde

    meines Erachtens steht vor dem gewollten Text
    d"@d


    WARUM??

    Tausend Dank Matthias

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.02.2004
    Ort
    Starnberg
    Alter
    39
    Beiträge
    170
    Hallo

    das ist aber kein C-Fehler, sondern ein SQL-Fehler, daher vielleicht falsches Forum?

    Wobei mir
    WHERE Standort='";
    auch komisch vorkommt. Schau dir mal die Anführungszeichen nochmal an.

    Grüsse, Martin

  3. #3
    Gast
    Ich tät als erstes STRCPY statt STRCAT nehmen, ich weiß nicht ob der malloc den bereich löscht (calloc)
    und reservier dir noch ein byte mehr für den schluß-Nuller von query
    sonst kracht's vielleicht. keep codin' !

+ Antworten

Benutzer, die dieses Thema gelesen haben: 0

Derzeit gibt es keine Benutzer zum Anzeigen.

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •