Changeset 4589 for trunk/psLib/src/db/psDB.c
- Timestamp:
- Jul 20, 2005, 3:40:10 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/db/psDB.c (modified) (28 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/db/psDB.c
r4556 r4589 12 12 * @author Joshua Hoblitt 13 13 * 14 * @version $Revision: 1. 39$ $Name: not supported by cvs2svn $15 * @date $Date: 2005-07- 15 02:33:52$14 * @version $Revision: 1.40 $ $Name: not supported by cvs2svn $ 15 * @date $Date: 2005-07-21 01:40:10 $ 16 16 * 17 17 * Copyright 2005 Joshua Hoblitt, University of Hawaii … … 49 49 // SQL generation functions 50 50 static char *psDBGenerateCreateTableSQL(const char *tableName, const psMetadata *where); 51 static char *psDBGenerateSelectRowSQL(const char *tableName, const char *col, const psMetadata *where, psU64 limit); 51 static char *psDBGenerateSelectRowSQL(const char *tableName, const char *col, 52 const psMetadata *where, psU64 limit); 52 53 static char *psDBGenerateInsertRowSQL(const char *tableName, const psMetadata *row); 53 static char *psDBGenerateUpdateRowSQL(const char *tableName, const psMetadata *where, const psMetadata *values); 54 static char *psDBGenerateDeleteRowSQL(const char *tableName, const psMetadata *where, unsigned long long limit); 54 static char *psDBGenerateUpdateRowSQL(const char *tableName, const psMetadata *where, 55 const psMetadata *values); 56 static char *psDBGenerateDeleteRowSQL(const char *tableName, const psMetadata *where, 57 unsigned long long limit); 55 58 static char *psDBGenerateWhereSQL(const psMetadata *where); 56 59 static char *psDBGenerateSetSQL(const psMetadata *set … … 89 92 /*****************************************************************************/ 90 93 91 psDB *psDBInit(const char *host, const char *user, const char *passwd, const char *dbname) 94 psDB *psDBInit(const char *host, 95 const char *user, 96 const char *passwd, 97 const char *dbname) 92 98 { 93 99 MYSQL *mysql; … … 139 145 } 140 146 141 bool psDBCreate(psDB *dbh, const char *dbname) 147 bool psDBCreate(psDB *dbh, 148 const char *dbname) 142 149 { 143 150 char *query = NULL; … … 157 164 } 158 165 159 bool psDBChange(psDB *dbh, const char *dbname) 166 bool psDBChange(psDB *dbh, 167 const char *dbname) 160 168 { 161 169 // Verify database object is valid … … 177 185 } 178 186 179 bool psDBDrop(psDB *dbh, const char *dbname) 187 bool psDBDrop(psDB *dbh, 188 const char *dbname) 180 189 { 181 190 char *query = NULL; … … 195 204 } 196 205 197 bool psDBCreateTable(psDB *dbh, const char *tableName, const psMetadata *md) 206 bool psDBCreateTable(psDB *dbh, 207 const char *tableName, 208 const psMetadata *md) 198 209 { 199 210 char *query; … … 225 236 } 226 237 227 bool psDBDropTable(psDB *dbh, const char *tableName) 238 bool psDBDropTable(psDB *dbh, 239 const char *tableName) 228 240 { 229 241 char *query = NULL; … … 244 256 } 245 257 246 psArray *psDBSelectColumn(psDB *dbh, const char *tableName, const char *col, unsigned long long limit) 258 psArray *psDBSelectColumn(psDB *dbh, 259 const char *tableName, 260 const char *col, 261 unsigned long long limit) 247 262 { 248 263 MYSQL_RES *result; // complete db result set … … 339 354 } 340 355 341 psVector *psDBSelectColumnNum(psDB *dbh, const char *tableName, const char *col, psElemType type, unsigned long long limit) 356 psVector *psDBSelectColumnNum(psDB *dbh, 357 const char *tableName, 358 const char *col, 359 psElemType type, 360 unsigned long long limit) 342 361 { 343 362 psArray *stringColumn; // source psArray … … 403 422 } 404 423 405 psArray *psDBSelectRows(psDB *dbh, const char *tableName, const psMetadata *where, unsigned long long limit) 424 psArray *psDBSelectRows(psDB *dbh, 425 const char *tableName, 426 const psMetadata *where, 427 unsigned long long limit) 406 428 { 407 429 MYSQL_RES *result; // complete db result set … … 507 529 } 508 530 509 bool psDBInsertOneRow(psDB *dbh, const char *tableName, const psMetadata *row) 531 bool psDBInsertOneRow(psDB *dbh, 532 const char *tableName, 533 const psMetadata *row) 510 534 { 511 535 psArray *rowSet; // psArray of row to insert … … 534 558 } 535 559 536 bool psDBInsertRows(psDB *dbh, const char *tableName, const psArray *rowSet) 560 bool psDBInsertRows(psDB *dbh, 561 const char *tableName, 562 const psArray *rowSet) 537 563 { 538 564 psMetadata *row; // row of data … … 635 661 } 636 662 637 psArray *psDBDumpRows(psDB *dbh, const char *tableName) 663 psArray *psDBDumpRows(psDB *dbh, 664 const char *tableName) 638 665 { 639 666 return psDBSelectRows(dbh, tableName, NULL, 0); 640 667 } 641 668 642 psMetadata *psDBDumpCols(psDB *dbh, const char *tableName) 669 psMetadata *psDBDumpCols(psDB *dbh, 670 const char *tableName) 643 671 { 644 672 MYSQL_RES *result; … … 698 726 } 699 727 700 psS64 psDBUpdateRows(psDB *dbh, const char *tableName, const psMetadata *where, const psMetadata *values) 728 long psDBUpdateRows(psDB *dbh, 729 const char *tableName, 730 const psMetadata *where, 731 const psMetadata *values) 701 732 { 702 733 char *query; … … 779 810 } 780 811 781 psS64 psDBDeleteRows(psDB *dbh, const char *tableName, const psMetadata *where, unsigned long long limit) 812 long psDBDeleteRows(psDB *dbh, 813 const char *tableName, 814 const psMetadata *where, 815 unsigned long long limit) 782 816 { 783 817 char *query; … … 818 852 /*****************************************************************************/ 819 853 820 bool p_psDBRunQuery(psDB *dbh, const char *format) 854 bool p_psDBRunQuery(psDB *dbh, 855 const char *format) 821 856 { 822 857 // Verify database object is not NULL … … 835 870 } 836 871 837 static inline bool psDBPackRow(MYSQL_BIND *bind, const psMetadata *values, psU32 paramCount) 872 static inline bool psDBPackRow(MYSQL_BIND *bind, 873 const psMetadata *values, 874 psU32 paramCount) 838 875 { 839 876 psListIterator *cursor; // row iterator … … 928 965 /*****************************************************************************/ 929 966 930 static char *psDBGenerateCreateTableSQL(const char *tableName, const psMetadata *table) 967 static char *psDBGenerateCreateTableSQL(const char *tableName, 968 const psMetadata *table) 931 969 { 932 970 char *query = NULL; // complete query … … 1004 1042 } 1005 1043 1006 static char *psDBGenerateSelectRowSQL(const char *tableName, const char *col, const psMetadata *where, psU64 limit) 1044 static char *psDBGenerateSelectRowSQL(const char *tableName, 1045 const char *col, 1046 const psMetadata *where, 1047 psU64 limit) 1007 1048 { 1008 1049 char *query = NULL; … … 1041 1082 } 1042 1083 1043 static char *psDBGenerateInsertRowSQL(const char *tableName, const psMetadata *row) 1084 static char *psDBGenerateInsertRowSQL(const char *tableName, 1085 const psMetadata *row) 1044 1086 { 1045 1087 char *query = NULL; … … 1097 1139 } 1098 1140 1099 static char *psDBGenerateUpdateRowSQL(const char *tableName, const psMetadata *where, const psMetadata *values) 1141 static char *psDBGenerateUpdateRowSQL(const char *tableName, 1142 const psMetadata *where, 1143 const psMetadata *values) 1100 1144 { 1101 1145 char *query = NULL; … … 1131 1175 } 1132 1176 1133 static char *psDBGenerateDeleteRowSQL(const char *tableName, const psMetadata *where, unsigned long long limit) 1177 static char *psDBGenerateDeleteRowSQL(const char *tableName, 1178 const psMetadata *where, 1179 unsigned long long limit) 1134 1180 { 1135 1181 char *query = NULL; … … 1261 1307 /*****************************************************************************/ 1262 1308 1263 static psElemType psDBMySQLToPType(enum enum_field_types type, unsigned int flags) 1309 static psElemType psDBMySQLToPType(enum enum_field_types type, 1310 unsigned int flags) 1264 1311 { 1265 1312 psHash *mysqlToSQLTable; // type lookup table … … 1550 1597 } 1551 1598 1552 static psPtr psDBMySQLTypeAlloc(enum enum_field_types type, bool isUnsigned) 1599 static psPtr psDBMySQLTypeAlloc(enum enum_field_types type, 1600 bool isUnsigned) 1553 1601 { 1554 1602 mysqlType *mType; … … 1561 1609 } 1562 1610 1563 static void psDBAddToLookupTable(psHash *lookupTable, psU32 type, const char *string) 1611 static void psDBAddToLookupTable(psHash *lookupTable, 1612 psU32 type, 1613 const char *string) 1564 1614 { 1565 1615 char *key; … … 1575 1625 } 1576 1626 1577 static void psDBAddVoidToLookupTable(psHash *lookupTable, psU32 type, psPtr value) 1627 static void psDBAddVoidToLookupTable(psHash *lookupTable, 1628 psU32 type, 1629 psPtr value) 1578 1630 { 1579 1631 char *key; … … 1650 1702 #define PS_IS_NAN(type, data, nan) *(type *)data == nan 1651 1703 1652 static bool psDBIsPTypeNaN(psElemType pType, psPtr data) 1704 static bool psDBIsPTypeNaN(psElemType pType, 1705 psPtr data) 1653 1706 { 1654 1707 bool isNaN;
Note:
See TracChangeset
for help on using the changeset viewer.
