// // ContactDAO.m // Yoosee // // Created by guojunyi on 14-4-14. // Copyright (c) 2014年 guojunyi. All rights reserved. // #import "ContactDAO.h" #import "Contact.h" #import "LoginResult.h" #import "UDManager.h" #import "FMDatabase.h" #import "Constants.h" @implementation ContactDAO -(id)init{ if([super init]){ if([self openDB]){ char *errMsg; // NSString *dropSQL = @"DROP TABLE Contact"; // if(sqlite3_exec(self.db, [dropSQL UTF8String], NULL, NULL, &errMsg)!=SQLITE_OK){ // NSLog(@"Table Contact failed to delete."); // sqlite3_free(errMsg); // } if(sqlite3_exec(self.db, [[self getCreateTableString] UTF8String], NULL, NULL, &errMsg)!=SQLITE_OK){ NSLog(@"Table Contact failed to create."); sqlite3_free(errMsg); } [self closeDB]; } int version = (int)[ContactDAO getDBVersion]; if(version0){ contact = [array objectAtIndex:0]; } return contact; } -(BOOL)update:(Contact *)contact{ if(![UDManager isLogin]){ return NO; } LoginResult *loginResult = [UDManager getLoginInfo]; sqlite3_stmt *statement; BOOL result = YES; if([self openDB]){ NSString *SQL = [NSString stringWithFormat:@"UPDATE Contact SET CONTACTID = \"%@\", CONTACTNAME = \"%@\",CONTACTPASSWORD = \"%@\",CONTACTTYPE = \"%li\",MESSAGECOUNT = \"%li\" WHERE ACTIVEUSER = \"%@\" AND CONTACTID = \"%@\"",contact.contactId,contact.contactName,contact.contactPassword,(long)contact.contactType,(long)contact.messageCount,loginResult.contactId,contact.contactId]; DLog(@"%@",SQL); if(sqlite3_prepare_v2(self.db, [SQL UTF8String], -1, &statement, NULL)!=SQLITE_OK){ NSLog(@"Failed to update Contact:%s",sqlite3_errmsg(self.db)); result = NO; } if(sqlite3_step(statement)!=SQLITE_DONE){ NSLog(@"Failed to update Contact:%s",sqlite3_errmsg(self.db)); result = NO; } sqlite3_reset(statement); sqlite3_finalize(statement); [self closeDB]; } return result; } @end