1 #import <Foundation/Foundation.h>
3 #import "FMResultSet.h"
5 @interface FMDatabase
: NSObject
8 NSString
* databasePath
;
16 BOOL shouldCacheStatements
;
17 NSMutableDictionary
*cachedStatements
;
21 + (id
)databaseWithPath
:(NSString
*)inPath
;
22 - (id
)initWithPath
:(NSString
*)inPath
;
26 - (BOOL
) goodConnection
;
27 - (void) clearCachedStatements
;
29 // encryption methods. You need to have purchased the sqlite encryption extensions for these to work.
30 - (BOOL
) setKey
:(NSString
*)key
;
31 - (BOOL
) rekey
:(NSString
*)key
;
34 - (NSString
*) databasePath
;
36 - (NSString
*) lastErrorMessage
;
38 - (int) lastErrorCode
;
40 - (sqlite_int64
) lastInsertRowId
;
42 - (sqlite3
*) sqliteHandle
;
44 - (BOOL
) executeUpdate
:(NSString
*)sql arguments
:(va_list)args
;
45 - (BOOL
) executeUpdate
:(NSString
*)sql
, ...;
47 - (id
) executeQuery
:(NSString
*)sql arguments
:(va_list)args
;
48 - (id
) executeQuery
:(NSString
*)sql
, ...;
52 - (BOOL
) beginTransaction
;
53 - (BOOL
) beginDeferredTransaction
;
56 - (void)setLogsErrors
:(BOOL
)flag
;
58 - (BOOL
)crashOnErrors
;
59 - (void)setCrashOnErrors
:(BOOL
)flag
;
62 - (void)setInUse
:(BOOL
)value
;
64 - (BOOL
)inTransaction
;
65 - (void)setInTransaction
:(BOOL
)flag
;
67 - (BOOL
)traceExecution
;
68 - (void)setTraceExecution
:(BOOL
)flag
;
71 - (void)setCheckedOut
:(BOOL
)flag
;
73 - (int)busyRetryTimeout
;
74 - (void)setBusyRetryTimeout
:(int)newBusyRetryTimeout
;
76 - (BOOL
)shouldCacheStatements
;
77 - (void)setShouldCacheStatements
:(BOOL
)value
;
79 - (NSMutableDictionary
*)cachedStatements
;
80 - (void)setCachedStatements
:(NSMutableDictionary
*)value
;
83 + (NSString
*) sqliteLibVersion
;
89 @interface FMStatement
: NSObject
{
90 sqlite3_stmt
*statement
;
99 - (sqlite3_stmt
*)statement
;
100 - (void)setStatement
:(sqlite3_stmt
*)value
;
103 - (void)setQuery
:(NSString
*)value
;
106 - (void)setUseCount
:(long)value
;