---------------------
PatchSet 3
Date: 2005/06/20 11:26:58
Author: jhoblitt
Branch: HEAD
Tag: (none)
Log:
change psDBUpdateRows() & psDBDeleteRows() to check the affected row count before a commit
Members:
src/dataIO/psDB.c:1.1->1.2
RCS file: /tmp/cvsroot/pslib/src/dataIO/psDB.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
|
|
|
psS64 psDBUpdateRows(psDB *dbh, const ch
|
| 758 | 758 | |
| 759 | 759 | psFree(bind); |
| 760 | 760 | |
| | 761 | // mysql_stmt_affected_rows() must be called before a commit |
| | 762 | rowsAffected = mysql_stmt_affected_rows(stmt); |
| | 763 | |
| 761 | 764 | // point of no return |
| 762 | 765 | mysql_commit(dbh->mysql); |
| 763 | 766 | |
| 764 | | rowsAffected = mysql_stmt_affected_rows(stmt); |
| 765 | | |
| 766 | 767 | mysql_stmt_close(stmt); |
| 767 | 768 | |
| 768 | 769 | return rowsAffected; |
| … |
… |
psS64 psDBUpdateRows(psDB *dbh, const ch
|
| 771 | 772 | psS64 psDBDeleteRows(psDB *dbh, const char *tableName, psMetadata *where) |
| 772 | 773 | { |
| 773 | 774 | char *query; |
| | 775 | unsigned long rowsAffected; |
| 774 | 776 | |
| 775 | 777 | query = psDBGenerateDeleteRowSQL(tableName, where); |
| 776 | 778 | if (!query) { |
| … |
… |
psS64 psDBDeleteRows(psDB *dbh, const ch
|
| 796 | 798 | return 1; |
| 797 | 799 | } |
| 798 | 800 | |
| | 801 | // mysql_affected_rows() must be called before a commit |
| | 802 | rowsAffected = (psS64)mysql_affected_rows(dbh->mysql); |
| | 803 | |
| 799 | 804 | // point of no return |
| 800 | 805 | mysql_commit(dbh->mysql); |
| 801 | 806 | |
| 802 | | return (psS64)mysql_affected_rows(dbh->mysql); |
| | 807 | return rowsAffected; |
| 803 | 808 | } |
| 804 | 809 | |
| 805 | 810 | // database utility functions |