麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

iOS中SQLite數據庫操作

2019-11-14 18:05:04
字體:
來源:轉載
供稿:網友

在iOS中實現SQLite數據庫的操作:1.導入框架(libsqlite3.0.tbd) 2.導入頭文件<sqlite3.h> 3.實現數據的增刪改查

實現簡單 SQLite數據庫操作 的 demo 具體過程:

1.創建名為 SQLite_Manage 的.h .m 文件,導入頭文件 <sqlite3.h>

2.數據庫在一個app中只有一個,使用單例模式:(代碼如下)

1 + (SQLite_Manager *)sharedManager{2     static SQLite_Manager *manager = nil;3     static dispatch_once_t onceToken;4     dispatch_once(&onceToken, ^{5         manager = [[SQLite_Manager alloc]init];6     });7     return manager;8 }

3.打開數據庫,代碼如下:

 1 - (void)open{ 2     //document路徑 3     NSString *docment = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject]; 4     //sqlite 路徑 5     NSString *sqlitePath = [docment stringByAppendingPathComponent:@"database.sqlite"]; 6     //打開數據庫 7     int result = sqlite3_open(sqlitePath.UTF8String, &db); 8     //判斷數據庫是否打開成功 9     if (result == SQLITE_OK) {10         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"打開成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];11         [alertView show];12     }else {13         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"打開失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];14         [alertView show];15     }16 }

 

4.創建表,代碼如下:

 1 - (void)creatTable{ 2     //sql語句 3     NSString *sqlString = @"create table Person (id integer PRimary key,name text,age integer)"; 4     //執行SQL語句 5     char *error = nil; 6     sqlite3_exec(db, sqlString.UTF8String, nil, nil, &error); 7      8     //判斷是否出現了錯誤 9     if (error == nil){10         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"創建表成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];11         [alertView show];12     }else {13         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"創建表失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];14         [alertView show];15     }16 }

 

5.插入數據,代碼如下:

 1 - (void)insert{ 2     //sql語句 3     NSString *sqlString = @"insert into Person ('name','age') values ('Ager',18)"; 4     //執行SQL語句 5     char *error = nil; 6     sqlite3_exec(db, sqlString.UTF8String, nil, nil, &error); 7     //判斷是否出現了錯誤 8     if (error == nil){ 9         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"插入數據成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];10         [alertView show];11     }else {12         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"插入數據失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];13         [alertView show];14     }15 16 }

 

6.修改數據,代碼如下:

 1 - (void)update{ 2     //sql語句 3     NSString *sqlString = @"update Person set 'name' = 'Arun' where id = 1"; 4     //執行sql語句 5     char *error = nil; 6     sqlite3_exec(db, sqlString.UTF8String, nil, nil, &error); 7      8     //判斷是否出現了錯誤 9     if (error == nil){10         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"數據更新成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];11         [alertView show];12     }else {13         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"數據更新失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];14         [alertView show];15     }16 }

 

7.查詢數據,代碼如下:

 1 - (void)select{ 2     //sql語句 3     NSString *sqlString = @"select * from Person"; 4     //準備sql 5     sqlite3_stmt *stmt = nil; 6     sqlite3_prepare(db, sqlString.UTF8String,-1, &stmt, nil); 7     //單步執行語句 8     while (sqlite3_step(stmt) == SQLITE_ROW) { 9         int ID = sqlite3_column_int(stmt, 0);10         const unsigned char *name = sqlite3_column_text(stmt, 1);11         int age = sqlite3_column_int(stmt, 2);12         NSLog(@"%d,%s,%d",ID,name,age);13     }14     sqlite3_finalize(stmt);15 }

 

8.刪除數據,代碼如下:

 1 - (void)deleteData{ 2     //sql語句 3     NSString *sqlString = @"delete from Person where id = 1"; 4     //執行sql語句 5     char *error = nil; 6     sqlite3_exec(db, sqlString.UTF8String, nil, nil, &error); 7     //判斷是否出現了錯誤 8     if (error == nil){ 9         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"刪除成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];10         [alertView show];11     }else {12         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"刪除失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];13         [alertView show];14     }15 }

 

9.關閉數據庫,代碼如下:

 1 - (void)close{ 2     //關閉數據庫 3     int result = sqlite3_close(db); 4     //判斷數據庫是否關閉成功 5     if (result == SQLITE_OK) { 6         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"關閉成功" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil]; 7         [alertView show]; 8     }else { 9         UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"數據庫執行結果" message:@"關閉失敗" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"確定", nil];10         [alertView show];11     }12 }

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嫩呦国产一区二区三区av | 日本aaaa片毛片免费观蜜桃 | 亚洲一区中文字幕 | 成人午夜视频免费在线观看 | 日韩黄色成人 | 黄色成人小视频 | 欧美三级欧美成人高清www | 成人羞羞在线观看网站 | 91短视频在线播放 | 欧美成年人在线视频 | 无码专区aaaaaa免费视频 | 欧美成人免费 | 成人毛片免费视频 | 视频二区国产 | 国产精品久久久久久久久久尿 | 黄网免费看 | 久久我不卡 | 欧美一级做 | 一级大黄毛片免费观看 | 成人毛片视频在线观看 | 成人在线视频精品 | 污污黄 | 嫩呦国产一区二区三区av | 男女羞羞的视频 | 午夜精品久久久久久久96蜜桃 | 中午字幕无线码一区2020 | 日本视频网 | 日韩视频www | 成人免费看片a | 成人在线视频在线观看 | 亚洲精品午夜在线 | 亚洲视频综合网 | www.国产免费 | 99视频网址 | 国产成人av在线播放 | 成人精品一区二区三区中文字幕 | 国产日韩一区二区三区在线观看 | 一级做受毛片免费大片 | 免费看成人av | 一级黄色在线观看 | 国产分类视频 |