// // Database.h // // Created by Robert on 20/07/2009. // Copyright 2009 Electric TopHat Ltd. All rights reserved. // #import #import // --------------------------------------------- // Database Access Class // --------------------------------------------- class Database { #pragma mark --------------------------------------------------------- #pragma mark === Constructor / Destructor Functions === #pragma mark --------------------------------------------------------- public: // Functions // --------------------------------------------- // Constructor // --------------------------------------------- Database( NSString * _name, NSString * _createString = nil ); // --------------------------------------------- // Destructor // --------------------------------------------- ~Database(); #pragma mark --------------------------------------------------------- #pragma mark === End Constructor / Destructor Functions === #pragma mark --------------------------------------------------------- #pragma mark --------------------------------------------------------- #pragma mark === Public Functions === #pragma mark --------------------------------------------------------- public: // --------------------------------------------- // execute a single sql statement // --------------------------------------------- Boolean execute( NSString * _sql, NSMutableArray * _results = nil ); Boolean execute( NSString * _sql, NSMutableDictionary * _result ); // --------------------------------------------- // --------------------------------------------- // Table has Column // --------------------------------------------- Boolean hasTableColumn( NSString * _tableName, NSString * _columnName ); Boolean tableColumns( NSString * _tableName, NSMutableArray * _results ); // --------------------------------------------- // --------------------------------------------- // Alter the table // --------------------------------------------- Boolean updateTable( NSString * create, NSString * insert, NSString * _name ); // --------------------------------------------- // --------------------------------------------- // Return the error string // --------------------------------------------- NSString * error() { return m_error; }; // --------------------------------------------- #pragma mark --------------------------------------------------------- #pragma mark === End Public Functions === #pragma mark --------------------------------------------------------- #pragma mark --------------------------------------------------------- #pragma mark === Private Functions === #pragma mark --------------------------------------------------------- private: //Functions Boolean createWithBundleDatabaseWithName(NSString* _name); Boolean createAnEmptyDatabaseWithName(NSString* _name, NSString * _createStatement); #pragma mark --------------------------------------------------------- #pragma mark === End Private Functions === #pragma mark --------------------------------------------------------- #pragma mark --------------------------------------------------------- #pragma mark === Protected Data === #pragma mark --------------------------------------------------------- protected: // Data // ------------------------- // Error String // ------------------------- NSString * m_error; // ------------------------- // ------------------------- // sql database // ------------------------- sqlite3 * m_database; // ------------------------- #pragma mark --------------------------------------------------------- #pragma mark === End Private Data === #pragma mark --------------------------------------------------------- }; // ---------------------------------------------