#include<string.h>
#include<stdio.h>
#include"mysql.h"
int main ()
{
MYSQL *walditest;
MYSQL_RES *reswaldi;
MYSQL *waldi_in;
MYSQL_RES *reswaldi_in;
MYSQL_ROW waldi_in_row;
MYSQL_FIELD *field;
my_ulonglong anz_zeilen;
char abfrage[100],temp[100];
const char abfrage_template[] = "SELECT * FROM data2 WHERE datum > %s";
unsigned int i;
//--------------------------------Verbinden mit walditest------------------------------------------
walditest = mysql_init(0);
walditest = mysql_real_connect(walditest,"the-air","scott","tiger","walditest",0,0,0);
if(walditest==0)
{
printf("Problem mit der Verbindung zu Walditest\n");
}
if(0!=mysql_query(walditest,"SELECT datum,wert FROM data2"))
{
printf("Problem with the query(walditest)\n");
}
//--------------------------------Verbinden mit waldi_in--------------------------------------------
waldi_in = mysql_init(0);
waldi_in = mysql_real_connect(waldi_in,"the-air","scott","tiger","waldi_in",0,0,0);
if(waldi_in==0)
{
printf("Problem mit der Verbindung zu Waldi_in\n");
}
//---------------------------------Auswählen aller Datensätz in waldi_in-----------------------------
if(0!=mysql_query(waldi_in,"SELECT datum,wert FROM data"))
{
printf("Problem with the query(waldi_in)\n");
}
reswaldi_in = mysql_store_result(waldi_in);
//------------Anzahl Zeilen Ergebnismenge auslesen und zum letzten Datensatz gehen--------------------
anz_zeilen = mysql_num_rows(reswaldi_in); //anzahl zeilen ergebnismenge
printf ("Anzahl Zeilen: %lu\n", (unsigned long) mysql_num_rows(reswaldi_in)); //ausgabe anzahl zeilen
mysql_data_seek(reswaldi_in,anz_zeilen-1); //zum letzten tupel springen
waldi_in_row=mysql_fetch_row(reswaldi_in); //daten auslesen
//printf("%s %s\n",waldi_in_row[0],waldi_in_row[1]); //daten ausgeben
//strcpy(last,waldi_in_row[0]); //speichern des letzten datums im string last
//printf("%s\n",last);
//----------------Starten einer Abfrage mit dem letzten Datensatz, gespeichert in last-------------------
snprintf(abfrage, sizeof abfrage, abfrage_template, waldi_in_row[0]);
abfrage[sizeof abfrage-1]=0;
printf("%s\n",abfrage);
if(0!=mysql_query(walditest, abfrage))
{
printf("Problem with the query 2\n");
}
mysql_close(waldi_in);
mysql_close(walditest);
}
hier der ganze code. problem ist: die letze abfrage funktioniert nicht.
aufgabenstellung:
in die quelldatenbank werden unregelmäßig daten geschrieben. mein progi wird regelmäßig aufgerufen, erkennt neue einträge und schreibt diese in die zieldatenbank. deshalb auch die datumsüberprüfung (alle einträge die neuer sind als der letzte der zieldb sollen kopiert werden). und bei dieser abfrage hakelt es schon.
soweit der erste teil.
hab ichs einigermaßen verständlich ausgedrückt?