View Single Post
  #1  
Old 28-07-2012, 16:17
o0o_khoaphp_o0o o0o_khoaphp_o0o vẫn chưa có mặt trong diễn đàn
Banned
 
Tham gia ngày: May 2008
Tuổi: 32
Bài gởi: 1,362
Thanks: 22
Thanked 1,810 Times in 383 Posts
Kết nối cơ sở dữ liệu với SQLite

A - Tạo kết nối đến file database sqlite
B1 : Add File .sqlite vào project
B2: Copy file B1 vào thư mục build của iOS Simulator
- Mở file default .m, hàm viewDidLoad

PHP Code:
NSString *databaseName = @"thegioididong.sqlite";
NSArray *documentPaths NSSearchPathForDirectoriesInDomains(NSDocumentDirectoryNSUserDomainMaskYES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
NSString *databasePath = [documentsDir stringByAppendingPathComponent:databaseName];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL success=[fileManager fileExistsAtPath:databasePath];
if (!
success) {
        
NSString *databasePathFromApp = [[[NSBundle mainBundleresourcePathstringByAppendingPathComponent:databaseName];
        [
fileManager copyItemAtPath:databasePathFromApp toPath:databasePath error:nil];  


A - SELECT: Lấy dữ liệu từ datbase

PHP Code:
sqlite3 *contactDB;
const 
char *dbpath = [databasePath UTF8String];
if(
sqlite3_open(dbpath, &contactDB)==SQLITE_OK){
        
        
sqlite3_stmt *statement;
        
NSString *sql = @"SELECT * FROM dienthoai";
        const 
char *query_stmt = [sql UTF8String];
        if(
sqlite3_prepare_v2(contactDBquery_stmt, -1, &statementNULL)==SQLITE_OK){
            
            while(
sqlite3_step(statement)==SQLITE_ROW){
                
NSString *ten = [[NSString allocinitWithUTF8String:(const char*)sqlite3_column_text(statement1)];
                
                [
danhsach addObject:ten];
            }
            
sqlite3_finalize(statement);
            
            
        }
        
        
}else{
        
NSLog(@"Có lỗi xảy ra");

B - INSERT (Thêm), UPDATE (Sửa), DELETE (Xóa)

PHP Code:
sqlite3 *contactDB;
    
    const 
char *dbpath = [databasePath UTF8String];
    
    if(
sqlite3_open(dbpath, &contactDB)==SQLITE_OK){
        
        
sqlite3_stmt *statement;
        
NSString *sql = [NSString stringWithFormat:@"INSERT INTO dienthoai VALUES(null, '%@','%@')",hotensodt];

        const 
char *query_stmt = [sql UTF8String];
        if(
sqlite3_prepare_v2(contactDBquery_stmt, -1, &statementNULL)==SQLITE_OK){
            
sqlite3_step(statement);
            
sqlite3_finalize(statement);
 
        }
   
    }else{
        
NSLog(@"iiiii");
    } 
Trả Lời Với Trích Dẫn
Những người sau đây đã gửi lời cảm ơn o0o_khoaphp_o0o vì bài viết hữu ích này: