diff options
author | David Sommerseth <dazo@users.sourceforge.net> | 2008-12-20 18:14:36 +0100 |
---|---|---|
committer | David Sommerseth <dazo@users.sourceforge.net> | 2008-12-20 18:14:36 +0100 |
commit | 1f4d314e1cd5f27c053682a9aedc494c22b6e4c8 (patch) | |
tree | 1503f1428b07bff258a6baa233fe1a68a3daa85a /database/sqlite/sqlite.c | |
parent | 12cf780e59073fcc81cb72174884d2affe6b460e (diff) | |
download | eurephia-1f4d314e1cd5f27c053682a9aedc494c22b6e4c8.tar.gz eurephia-1f4d314e1cd5f27c053682a9aedc494c22b6e4c8.tar.xz eurephia-1f4d314e1cd5f27c053682a9aedc494c22b6e4c8.zip |
sqlite3 - Added sortkeys as argument to sqlite_query_mapped(...)
The last argument to the function can contain a list over field names
which will be used in the ORDER BY clause when doing SELECT queries.
Diffstat (limited to 'database/sqlite/sqlite.c')
-rw-r--r-- | database/sqlite/sqlite.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/database/sqlite/sqlite.c b/database/sqlite/sqlite.c index 7f9f7fc..6b0cd72 100644 --- a/database/sqlite/sqlite.c +++ b/database/sqlite/sqlite.c @@ -386,7 +386,7 @@ char *_build_sqlpart(int btyp, eDBfieldMap *map) { dbresult *sqlite_query_mapped(eurephiaCTX *ctx, SQLqueryType qType, const char *sqlstub, - eDBfieldMap *valMap, eDBfieldMap *whereMap) + eDBfieldMap *valMap, eDBfieldMap *whereMap, const char *sortkeys) { dbresult *res = NULL; char *tmp1 = NULL, *tmp2 = NULL; @@ -399,7 +399,11 @@ dbresult *sqlite_query_mapped(eurephiaCTX *ctx, SQLqueryType qType, const char * case SQL_DELETE: if( whereMap != NULL ) { tmp1 = _build_sqlpart(btWHERE, whereMap); - res = sqlite_query(ctx, "%s WHERE %s", sqlstub, tmp1); + if( sortkeys == NULL ) { + res = sqlite_query(ctx, "%s WHERE %s", sqlstub, tmp1); + } else { + res = sqlite_query(ctx, "%s WHERE %s ORDER BY %s", sqlstub, tmp1, sortkeys); + } free_nullsafe(tmp1); } break; |