Hello list,
i have a problem with libpq and variable in select.
please have a look my sourcecode :
/** testlibpq1.cc* Test the C++ version of LIBPQ, the POSTGRES frontend library.** queries the template1 database
fora list of database names**/
#include <iostream.h>
#include <iomanip.h>
#include
<libpq++.H>
/**********************************************************************************/
typedef struct _user_data { /* first two items must be same as hash_link */ char *user; struct _user_data *next;
char *passwd;
}
user_data;
/**********************************************************************************/
int main()
{ // Begin, by establishing a connection to the backend. // When no parameters are given then the system will // try to
usereasonable defaults by looking up environment variables // or, failing that, using hardwired constants const char*
dbName= "dbname=testdb"; PgDatabase data(dbName);
// check to see that the backend connection was successfully made if ( data.ConnectionBad() ) { cerr <<
"Connectionto database '" << dbName << "' failed." << endl << "Error returned: " << data.ErrorMessage() <<
endl; exit(1);
}
/************************************************************************************/
char *user, *passwd, *p;
char buf[256]; while (fgets(buf, 256, stdin) != NULL) { if ((p = strchr(buf, '\n')) != NULL) *p =
'\0'; /* strip \n */
if ((user = strtok(buf, " ")) == NULL) { printf("ERR\n"); continue;} if
((passwd= strtok(NULL, "")) == NULL) { printf("ERR\n");
continue;}
/************************************************************************************/ // fetch instances from the
pg_database,the system catalog of databases if ( !data.ExecTuplesOk("select * from test where name={user} and
password={passwd}") ) { cerr << "Error" << endl; exit(1); }
cout << "if" << user << "and"<< endl;
cout << user << " ww " << passwd <<endl; // first, print out the attribute names int nFields = data.Fields(); if
(data.Tuples()== 1) { cout << data.Tuples() << endl;} else {cout << "Err" <<endl;} // next, print out the instances
}
}
--
Sent through Global Message Exchange - http://www.gmx.net