Browse Source

Changed FMDatabase's "- (BOOL)update:(NSString*)sql error:(NSError**)outErr bind:(id)bindArgs, ... " to "- (BOOL)update:(NSString*)sql withErrorAndBindings:(NSError**)outErr, ..." as the previous method didn't actually work as advertised in the way it was written. Thanks to @jaekwon for pointing this out.

August Mueller 14 years ago
parent
commit
a3498a31c3
4 changed files with 12 additions and 4 deletions
  1. 1 0
      CHANGES_AND_TODO_LIST.txt
  2. 1 1
      src/FMDatabase.h
  3. 4 2
      src/FMDatabase.m
  4. 6 1
      src/fmdb.m

+ 1 - 0
CHANGES_AND_TODO_LIST.txt

@@ -5,6 +5,7 @@ If you would like to contribute some code- awesome!  I just ask that you make it
 
 
 2011.07.14:
 2011.07.14:
     Added methods for named parameters, using keys from an NSDictionary (Thanks to Drarok Ithaqua for the patches!)
     Added methods for named parameters, using keys from an NSDictionary (Thanks to Drarok Ithaqua for the patches!)
+    Changed FMDatabase's "- (BOOL)update:(NSString*)sql error:(NSError**)outErr bind:(id)bindArgs, ... " to "- (BOOL)update:(NSString*)sql withErrorAndBindings:(NSError**)outErr, ..." as the previous method didn't actually work as advertised in the way it was written.  Thanks to @jaekwon for pointing this out.
 
 
 2011.06.22
 2011.06.22
     Changed some methods to properties.  Hello 2011.
     Changed some methods to properties.  Hello 2011.

+ 1 - 1
src/FMDatabase.h

@@ -61,7 +61,7 @@
 
 
 - (sqlite3*)sqliteHandle;
 - (sqlite3*)sqliteHandle;
 
 
-- (BOOL)update:(NSString*)sql error:(NSError**)outErr bind:(id)bindArgs, ...;
+- (BOOL)update:(NSString*)sql withErrorAndBindings:(NSError**)outErr, ...;
 - (BOOL)executeUpdate:(NSString*)sql, ...;
 - (BOOL)executeUpdate:(NSString*)sql, ...;
 - (BOOL)executeUpdateWithFormat:(NSString *)format, ...;
 - (BOOL)executeUpdateWithFormat:(NSString *)format, ...;
 - (BOOL)executeUpdate:(NSString*)sql withArgumentsInArray:(NSArray *)arguments;
 - (BOOL)executeUpdate:(NSString*)sql withArgumentsInArray:(NSArray *)arguments;

+ 4 - 2
src/FMDatabase.m

@@ -321,6 +321,8 @@ - (int)changes {
 
 
 - (void)bindObject:(id)obj toColumn:(int)idx inStatement:(sqlite3_stmt*)pStmt {
 - (void)bindObject:(id)obj toColumn:(int)idx inStatement:(sqlite3_stmt*)pStmt {
     
     
+    NSLog(@"%d", idx);
+    
     if ((!obj) || ((NSNull *)obj == [NSNull null])) {
     if ((!obj) || ((NSNull *)obj == [NSNull null])) {
         sqlite3_bind_null(pStmt, idx);
         sqlite3_bind_null(pStmt, idx);
     }
     }
@@ -898,9 +900,9 @@ - (BOOL)executeUpdateWithFormat:(NSString*)format, ... {
     return [self executeUpdate:sql withArgumentsInArray:arguments];
     return [self executeUpdate:sql withArgumentsInArray:arguments];
 }
 }
 
 
-- (BOOL)update:(NSString*)sql error:(NSError**)outErr bind:(id)bindArgs, ... {
+- (BOOL)update:(NSString*)sql withErrorAndBindings:(NSError**)outErr, ... {
     va_list args;
     va_list args;
-    va_start(args, bindArgs);
+    va_start(args, outErr);
     
     
     BOOL result = [self executeUpdate:sql error:outErr withArgumentsInArray:nil orDictionary:nil orVAList:args];
     BOOL result = [self executeUpdate:sql error:outErr withArgumentsInArray:nil orDictionary:nil orVAList:args];
     
     

+ 6 - 1
src/fmdb.m

@@ -45,7 +45,7 @@ int main (int argc, const char * argv[]) {
     }
     }
     
     
     NSError *err = 0x00;
     NSError *err = 0x00;
-    FMDBQuickCheck(![db update:@"blah blah blah" error:&err bind:nil]);
+    FMDBQuickCheck(![db update:@"blah blah blah" withErrorAndBindings:&err]);
     FMDBQuickCheck(err != nil);
     FMDBQuickCheck(err != nil);
     FMDBQuickCheck([err code] == SQLITE_ERROR);
     FMDBQuickCheck([err code] == SQLITE_ERROR);
     NSLog(@"err: '%@'", err);
     NSLog(@"err: '%@'", err);
@@ -497,6 +497,11 @@ int main (int argc, const char * argv[]) {
         FMDBQuickCheck(([rs longLongIntForColumn:@"e"] == 12345678901234));
         FMDBQuickCheck(([rs longLongIntForColumn:@"e"] == 12345678901234));
     }
     }
     
     
+    {
+        NSError *err;
+        FMDBQuickCheck(([db update:@"insert into t5 values (?, ?, ?, ?, ?)" withErrorAndBindings:&err, @"text", [NSNumber numberWithInt:42], @"BLOB", @"d", [NSNumber numberWithInt:0]]));
+        
+    }