中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

IOS之數據庫的查找,刪除,添加,更新
來源:易賢網 閱讀:1553 次 日期:2014-11-04 11:40:35
溫馨提示:易賢網小編為您整理了“IOS之數據庫的查找,刪除,添加,更新”,方便廣大網友查閱!

DB類之.h文件

#import <Foundation/Foundation.h>

#import <sqlite3.h>

@interface DB : NSObject

+(sqlite3 *)openDB;//打開數據庫

-(void)closeDB;//關閉數據庫

@end

DB類之.m文件

#import "DB.h"

#import <sqlite3.h>

static sqlite3 *db = nil;

@implementation DB

+(sqlite3 *)openDB

{

if(db)

{

return db;

}

//目標路徑

NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES)objectAtIndex:0];

//原始路徑

NSString *filePath = [docPath stringByAppendingPathComponent:@"db.sqlite"];

NSFileManager *fm = [NSFileManager defaultManager];

if ([fm fileExistsAtPath:filePath] == NO)//如果doc下沒有數據庫,從bundle里面拷貝過來

{

NSString *bundle = [[NSBundle mainBundle]pathForResource:@"classDB" ofType:@"sqlite"];

NSError *err = nil;

if ([fm copyItemAtPath:bundle toPath:filePath error:&err] == NO) //如果拷貝失敗

{

NSLog(@" localizedDescription]);

}

}

sqlite3_open([filePath UTF8String], &db);

return db;

}

-(void)closeDB

{

if (db)

{

sqlite3_close(db);

}

}

@end

Person類.h文件

#import <Foundation/Foundation.h>

@interface Person : NSObject

@property(nonatomic,retain)NSString *name,*phone;

@property(nonatomic,assign)int age,ID;

-(id)initWithName:(NSString *)name phone:(NSString *)phone age:(int)age ID:(int)ID;

+(NSMutableArray *)findAll;

+(int)count;

+(Person *)findByID:(int)ID;

+(NSMutableArray *)findByname:(NSString *)name;

+(void)addName:(NSString *)name phone:(NSString *)phone age:(int)age;

+(void)deleteByID:(int)ID;

+(void)updataName:(NSString *)name phone:(NSString *)phone age:(int)age forID:(int)ID;

@end

Person類.m文件

#import "Person.h"

#import "DB.h"

@implementation Person

@synthesize name,ID,phone,age;

-(id)initWithName:(NSString *)aName phone:(NSString *)aPhone age:(int)aAge ID:(int)aID

{

[super init];

if (self)

{

self.name = aName;

self.phone = aPhone;

self.age = aAge;

self.ID = aID;

}

return self;

}

-(NSString *)description

{

return [NSString stringWithFormat:@"id = %d name = %@ phone = %@ age = %d",self.ID,self.name,self.phone,self.age ];

}

+(NSMutableArray *)findAll

{

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;//創建一個聲明對象

int result = sqlite3_prepare_v2(db, "select * from classDB order by ID ", -1, &stmt, nil);

NSMutableArray *persons = nil;

if (result == SQLITE_OK)

{

persons = [[NSMutableArray alloc]init];

while (sqlite3_step(stmt) == SQLITE_ROW)

{

int ID = sqlite3_column_int(stmt, 0);

const unsigned char *name = sqlite3_column_text(stmt, 1);

const unsigned char *phone = sqlite3_column_text(stmt, 2);

int age = sqlite3_column_int(stmt, 3);

Person *p = [[Person alloc]initWithName:[NSString stringWithUTF8String:(const char *)name] phone:[NSString stringWithUTF8String:(const char *)phone] age:age ID:ID];

[persons addObject:p];

[p release];

}

}

else

{

persons = [[NSMutableArray alloc]init];

}

sqlite3_finalize(stmt);

return [persons autorelease];

}

+(int)count

{

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

int result = sqlite3_prepare_v2(db, "select count(ID) from classDB", -1, &stmt, nil);

if (result == SQLITE_OK)

{

int count = 0;

if (sqlite3_step(stmt))

{

count = sqlite3_column_int(stmt, 0);

}

sqlite3_finalize(stmt);

return count;

}

else

{

sqlite3_finalize(stmt);

return 0;

}

}

+(Person *)findByID:(int)ID

{

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

Person *p = nil;

int result = sqlite3_prepare_v2(db, "select * from classDB where ID = ?", -1, &stmt, nil);

if (result == SQLITE_OK)

{

sqlite3_bind_int(stmt, 1, ID);

if (sqlite3_step(stmt))

{

int ID = sqlite3_column_int(stmt, 0);

const unsigned char *name = sqlite3_column_text(stmt, 1);

const unsigned char *phone = sqlite3_column_text(stmt, 2);

int age = sqlite3_column_int(stmt, 3);

p = [[Person alloc]initWithName:[NSString stringWithUTF8String:(const char *)name] phone:[NSString stringWithUTF8String:(const char *)phone] age:age ID:ID];

}

}

sqlite3_finalize(stmt);

return [p autorelease];

}

+(NSMutableArray *)findByname:(NSString *)name

{

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

int result = sqlite3_prepare(db, "select * from classDB where name = ?", -1, &stmt, nil);

NSMutableArray *persons = nil;

if (result == SQLITE_OK)

{

sqlite3_bind_text(stmt, 1, [name UTF8String], -1, nil);

persons = [[NSMutableArray alloc]init];

while (sqlite3_step(stmt) == SQLITE_ROW)

{

int ID = sqlite3_column_int(stmt, 0);

const unsigned char *name = sqlite3_column_text(stmt, 1);

const unsigned char *phone = sqlite3_column_text(stmt, 2);

int age = sqlite3_column_int(stmt, 3);

Person *p = [[Person alloc]initWithName:[NSString stringWithUTF8String:(const char *)name] phone:[NSString stringWithUTF8String:(const char *)phone] age:age ID:ID];

[persons addObject:p];

[p release];

}

}

else

{

persons = [[NSMutableArray alloc]init];

}

sqlite3_finalize(stmt);

return [persons autorelease];

}

//添加元素

+(void)addName:(NSString *)name phone:(NSString *)phone age:(int)age

{

NSString *str = [NSString stringWithFormat:@"insert into classDB(name,phone,age) values(];

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

int result = sqlite3_prepare_v2(db, [str UTF8String],-1 ,&stmt , nil);

if (result == SQLITE_OK)

{

sqlite3_step(stmt);

}

sqlite3_finalize(stmt);

}

//根據ID刪除信息

+(void)deleteByID:(int)ID

{

NSString *str = [NSString stringWithFormat:@"delete from classDB where ID = %d",ID];

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

int result = sqlite3_prepare_v2(db, [str UTF8String], -1, &stmt, nil);

if (result == SQLITE_OK)

{

sqlite3_step(stmt);

}

sqlite3_finalize(stmt);

}

//更新

+(void)updataName:(NSString *)name phone:(NSString *)phone age:(int)age forID:(int)ID

{

NSString *str = [NSString stringWithFormat:@"update classDB set name = = %d where ID = %d",name,phone,age,ID];

sqlite3 *db = [DB openDB];

sqlite3_stmt *stmt = nil;

int result = sqlite3_prepare_v2(db, [str UTF8String], -1, &stmt, nil);

if (result == SQLITE_OK)

{

sqlite3_step(stmt);

}

sqlite3_finalize(stmt);

}

@end

更多信息請查看IT技術專欄

更多信息請查看技術文章
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
在线观看中文字幕不卡| 欧美成人资源网| 亚洲视频综合| 亚洲一品av免费观看| 亚洲国产mv| 亚洲综合电影一区二区三区| 亚洲欧美在线免费观看| 中文网丁香综合网| 欧美日韩三级一区二区| 一色屋精品视频在线看| 亚欧成人精品| 欧美在线三区| 日韩视频亚洲视频| 欧美成人精品影院| 欧美日韩在线播放三区| 日韩手机在线导航| 免费亚洲一区二区| 国产亚洲成年网址在线观看| 亚洲一区二区三区在线看| 欧美日韩一二三四五区| 99精品欧美一区二区蜜桃免费| 欧美日本免费一区二区三区| 夜夜嗨av一区二区三区网页| 欧美色视频一区| 久久国产欧美| 亚洲成色www8888| 久久精品在线| 欧美美女操人视频| 欧美激情精品久久久久久黑人| 欧美在线中文字幕| 一区二区91| 久久精品72免费观看| 亚洲一区二区av电影| 欧美日韩亚洲不卡| 亚洲东热激情| 一本久道久久综合中文字幕| 欧美国产精品v| 久久天天躁狠狠躁夜夜av| 亚洲影视在线播放| 韩国精品久久久999| 亚洲国产成人久久综合| 欧美精品一区二区三区很污很色的| 亚洲激情视频在线播放| 国产精品久久久久久久久久妞妞| 亚洲人成啪啪网站| 国产精品午夜视频| 久久综合九色99| 一区二区三区四区五区精品视频| 女人天堂亚洲aⅴ在线观看| 一本一本久久a久久精品综合麻豆| 欧美国产一区二区| 亚洲美女黄色片| 在线播放视频一区| 一区二区三区在线视频观看| 免费永久网站黄欧美| 欧美一区二区日韩| 久久亚洲精品一区二区| 亚洲欧美国产高清va在线播| 蜜桃av综合| 奶水喷射视频一区| 久久久久久婷| 一区二区三区日韩精品| 一本色道久久综合亚洲精品按摩| 国产精品视频1区| 欧美日韩在线亚洲一区蜜芽 | 欧美理论电影在线观看| 久久久久久久波多野高潮日日| 亚洲精品影院| 国内外成人免费激情在线视频| 国产精品大片| 久久精品免费播放| 免费久久99精品国产自| 免费短视频成人日韩| 国产亚洲精品7777| 亚洲高清久久网| 欧美日韩免费在线观看| 怡红院av一区二区三区| 日韩一区二区福利| 久久久久国产精品www| 欧美电影免费观看网站| 久久久久久伊人| 亚洲一区二区影院| 亚洲私人黄色宅男| 欧美在线观看一区二区| 欧美一区二区三区婷婷月色| 欧美亚洲一区二区在线| 久久亚洲影院| 欧美午夜不卡| 国产在线高清精品| 亚洲精品美女| 亚洲伊人色欲综合网| 久久亚洲精品欧美| 农村妇女精品| 国产精品一二三四| 亚洲小少妇裸体bbw| 亚洲午夜成aⅴ人片| 欧美精品在线观看播放| 亚洲第一精品夜夜躁人人爽 | 亚洲三级影院| 久久一区二区三区国产精品| 国产一级一区二区| 欧美精品18+| 免费视频一区| 亚洲美女中文字幕| 1000部精品久久久久久久久| 欧美一区二区视频97| 国产精品午夜久久| 亚洲天堂av综合网| 又紧又大又爽精品一区二区| 欧美激情在线狂野欧美精品| 久久看片网站| 91久久精品日日躁夜夜躁欧美| 欧美一区二区成人| 韩国欧美国产1区| 免费亚洲电影| 亚洲午夜免费福利视频| 欧美午夜无遮挡| 久久精品成人一区二区三区蜜臀| 国产精品美女久久久久aⅴ国产馆| 欧美日韩你懂的| 欧美亚洲自偷自偷| 亚洲三级电影全部在线观看高清| 欧美激情一区二区久久久| 香蕉久久一区二区不卡无毒影院| 国产精品国产| 欧美亚洲视频在线看网址| 一区二区三区|亚洲午夜| 日韩视频在线免费| 亚洲精品一品区二品区三品区| 亚洲一级片在线看| 国产一区二区中文| 欧美一区二粉嫩精品国产一线天| 亚洲一区在线直播| 亚洲欧美另类中文字幕| 亚洲欧美日韩另类| 浪潮色综合久久天堂| 国产精品久久久久国产精品日日| 国产一区二区三区丝袜| 日韩亚洲综合在线| 亚洲一区免费观看| 亚洲福利精品| 在线观看久久av| 国外成人在线| 亚洲国产美女| 欧美日韩爆操| 欧美国产精品一区| 亚洲人成免费| 一区视频在线| 黑人一区二区三区四区五区| 国产一区二区无遮挡| 狠狠色综合一区二区| 亚洲高清免费在线| 亚洲综合大片69999| 欧美aⅴ99久久黑人专区| 国产精品成人一区二区网站软件 | 亚洲一区二区高清视频| 久久国产精品99国产| 美玉足脚交一区二区三区图片| 亚洲精选久久| 性视频1819p久久| 久久久福利视频| 欧美精品一线| 亚洲一区久久久| 欧美午夜理伦三级在线观看| 亚洲精品免费一区二区三区| 久久欧美肥婆一二区| 亚洲精品日日夜夜| 国产日本亚洲高清| 欧美久久久久免费| 亚洲精品欧美日韩| 欧美成人中文| 狠狠色狠狠色综合系列| 性欧美精品高清| 欧美精品免费播放| 国产精品99久久久久久www| 欧美大片在线观看一区| 在线天堂一区av电影| 国内精品久久国产| 国产精品福利在线| 在线观看国产日韩| 欧美日韩福利在线观看| 亚洲视频在线观看免费| 亚洲精品国产精品国产自| 国产日韩欧美a| 久久亚洲私人国产精品va媚药| 性伦欧美刺激片在线观看| 亚洲欧美日韩国产另类专区| 国产精品久久久久久久午夜 | 亚洲一区二区三区在线| 国产精品老牛| 欧美成人国产| 免播放器亚洲| 先锋a资源在线看亚洲| 在线观看国产一区二区| 亚洲精品久久久久久久久| 国产欧美成人| 欧美日韩免费网站| 久久亚洲精品一区二区| 一区二区三区日韩| 亚洲国产精品久久精品怡红院|