From: Florian G. <re...@us...> - 2008-02-19 22:25:09
|
Update of /cvsroot/perfparse/_perfparse/libpp_mysql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9255/libpp_mysql Modified Files: dbms.c dbms.h Log Message: prepare for more gentle sql error handling Index: dbms.c =================================================================== RCS file: /cvsroot/perfparse/_perfparse/libpp_mysql/dbms.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** dbms.c 13 Feb 2008 22:50:32 -0000 1.11 --- dbms.c 19 Feb 2008 22:25:13 -0000 1.12 *************** *** 3,7 **** * dbms.c - Common functions required by PerfParse suit. * ! * Copyright (c) 2004-2007 Ben Clewett (per...@cl...) and * Florian Gleixner * --- 3,7 ---- * dbms.c - Common functions required by PerfParse suit. * ! * Copyright (c) 2004-2008 Ben Clewett (per...@cl...) and * Florian Gleixner * *************** *** 103,114 **** } ! void libpp_mysql_query(char*file, int line, const char *sql) { pp_log_func; ! pp_log(__FILE__,__LINE__,LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); freeResult(); ! if(mysql_query(&db_mysql, sql)) sql_failure(file, line, sql, mysql_error(&db_mysql)); iRowsAffected = mysql_affected_rows(&db_mysql); --- 103,116 ---- } ! int libpp_mysql_query(char*file, int line, const char *sql) { pp_log_func; ! pp_log_fl(LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); freeResult(); ! if(mysql_query(&db_mysql, sql)) { sql_failure(file, line, sql, mysql_error(&db_mysql)); + return(FALSE); //if sql_failure does not bail out + } iRowsAffected = mysql_affected_rows(&db_mysql); *************** *** 117,123 **** ! pp_log(__FILE__,__LINE__,LOG_DEBUG_SQL,"Rows: %d\n", rows()); iSQLCount++; } --- 119,126 ---- ! pp_log_fl(LOG_DEBUG_SQL,"Rows: %d\n", rows()); iSQLCount++; + return(TRUE); } *************** *** 129,136 **** MYSQL_RES *result; ! pp_log(__FILE__,__LINE__,LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); ! if (mysql_query(&db_mysql, sql)) sql_failure(file, line, sql, mysql_error(&db_mysql)); result = mysql_use_result(&db_mysql); --- 132,141 ---- MYSQL_RES *result; ! pp_log_fl(LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); ! if (mysql_query(&db_mysql, sql)) { sql_failure(file, line, sql, mysql_error(&db_mysql)); + return(FALSE); + } result = mysql_use_result(&db_mysql); *************** *** 156,165 **** MYSQL_ROW row; ! pp_log(__FILE__,__LINE__,LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); if (sRet) free(sRet); ! if (mysql_query(&db_mysql, sql)) sql_failure(file, line, sql, mysql_error(&db_mysql)); result = mysql_use_result(&db_mysql); --- 161,172 ---- MYSQL_ROW row; ! pp_log_fl(LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); if (sRet) free(sRet); ! if (mysql_query(&db_mysql, sql)) { sql_failure(file, line, sql, mysql_error(&db_mysql)); + return(NULL); // if sql_failure does not bail out + } result = mysql_use_result(&db_mysql); *************** *** 179,191 **** ! void libpp_mysql_query_no_return(char*file, int line, const char *sql) { pp_log_func; MYSQL_RES *discaud; ! pp_log(__FILE__,__LINE__,LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); ! if (mysql_query(&db_mysql, sql)) sql_failure(file, line, sql, mysql_error(&db_mysql)); iRowsAffected = mysql_affected_rows(&db_mysql); --- 186,200 ---- ! int libpp_mysql_query_no_return(char*file, int line, const char *sql) { pp_log_func; MYSQL_RES *discaud; ! pp_log_fl(LOG_DEBUG_SQL,"SQL execution: \"%s\"\n", sql); ! if (mysql_query(&db_mysql, sql)) { sql_failure(file, line, sql, mysql_error(&db_mysql)); + return(FALSE); + } iRowsAffected = mysql_affected_rows(&db_mysql); *************** *** 198,202 **** iSQLCount++; ! } --- 207,212 ---- iSQLCount++; ! ! return(TRUE); } Index: dbms.h =================================================================== RCS file: /cvsroot/perfparse/_perfparse/libpp_mysql/dbms.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** dbms.h 12 Aug 2007 00:11:45 -0000 1.3 --- dbms.h 19 Feb 2008 22:25:14 -0000 1.4 *************** *** 3,7 **** * dbms.h - Common functions required by PerfParse suit. * ! * Copyright (c) 2004 Ben Clewett (per...@cl...) * $Id$ * --- 3,9 ---- * dbms.h - Common functions required by PerfParse suit. * ! * Copyright (c) 2004-2008 Ben Clewett (per...@cl...) ! * Florian Gleixner ! * * $Id$ * *************** *** 46,51 **** char *sData(int iCol); double dData(int iCol); ! void libpp_mysql_query(char*f,int l, const char *sql); ! void libpp_mysql_query_no_return(char*f,int l, const char *sql); int libpp_mysql_query_int(char*f,int l, const char *sql); const char *libpp_mysql_query_char(char*f,int l, const char *sql); --- 48,53 ---- char *sData(int iCol); double dData(int iCol); ! int libpp_mysql_query(char*f,int l, const char *sql); ! int libpp_mysql_query_no_return(char*f,int l, const char *sql); int libpp_mysql_query_int(char*f,int l, const char *sql); const char *libpp_mysql_query_char(char*f,int l, const char *sql); |