#include "my_global.h" #include "mysql.h" #define SELECT123 "SELECT 1 FROM XL_T1 WHERE LIC_TYPE NOT IN (SELECT USERTYP FROM XL_V1)" #define MHOST "localhost" #define MUSER "root" #define MPASS "" #define MDBASE "xl_issue2" void setup_db(MYSQL *conn) { int res; res= mysql_query(conn, "DROP TABLE IF EXISTS XL_T1"); res= mysql_query(conn, "CREATE TABLE XL_T1 (LIC_TYPE varchar(2) collate latin1_bin NOT NULL default ' ') ENGINE=MYISAM"); res= mysql_query(conn, "DROP TABLE IF EXISTS XL_T2"); res= mysql_query(conn, "CREATE TABLE XL_T2(USERTYP varchar(2) default NULL) ENGINE=MYISAM;"); res= mysql_query(conn, "DROP VIEW XL_V1"); res= mysql_query(conn, "CREATE VIEW XL_V1 as SELECT USERTYP FROM XL_T2"); } int main(int argc, char **argv) { MYSQL *conn; MYSQL_STMT *prep_stmt = NULL; int res; mysql_library_init(argc, argv, NULL); if (!(conn = mysql_real_connect(mysql_init(NULL), MHOST, MUSER, MPASS, MDBASE, 0, NULL, 0))) { fprintf(stderr, "Could not connect"); exit(1); } setup_db(conn); res= mysql_stmt_prepare(prep_stmt= mysql_stmt_init(conn), SELECT123 , strlen(SELECT123)); printf("res=%d %d\n", res, __LINE__); res= mysql_stmt_execute(prep_stmt); printf("res=%d %d\n", res, __LINE__); }