
我使用firefox sqlite管理器创建了数据库,并将文件复制到Xcode项目中.
这是我的代码 –
-(Nsstring *)datafilePath{ NSArray *paths = NSSearchPathForDirectorIEsInDomains(NSdocumentDirectory,NSUserDomainMask,YES); Nsstring *documentsDir = [paths objectAtIndex:0]; return [documentsDir stringByAppendingPathComponent:kfilename];} 我正在尝试使用vIEwDIDLoad中的sqlite3_open_v2命令打开数据库
sqlite3 *database; if (sqlite3_open_v2([[self datafilePath] UTF8String],&database,sqlITE_OPEN_READWRITE,NulL) != sqlITE_OK) { sqlite3_close(database); // not sure you need to close if the open Failed NSAssert(0,@"Failed to open database"); }解决方法 这是我打开数据库的方式.我已经很长时间没有做sqlite了,除了提供我在自己的应用程序中使用的代码之外,我无法给你太多帮助.这是我在我的应用程序中使用的类. static sqlite3 *database;static sqlite3_stmt *enableForeignKey;@implementation DBAdapter+ (sqlite3 *)sharedInstance { if (database == NulL) { sqlite3 *newDBconnection; NSArray *paths = NSSearchPathForDirectorIEsInDomains(NSdocumentDirectory,YES); Nsstring *documentsDirectory = [paths objectAtIndex:0]; Nsstring *path = [documentsDirectory stringByAppendingPathComponent:@"klb_db.sqlite"]; if (sqlite3_open([path UTF8String],&newDBconnection) == sqlITE_OK) { //NSLog(@"Database Successfully Opened :)"); database = newDBconnection; if (sqlite3_prepare_v2(database,"PRAGMA foreign_keys = ON",-1,&enableForeignKey,NulL) != sqlITE_OK) { NSLog(@"ERROR IN PRAGMA!"); } sqlite3_finalize(enableForeignKey); } else { NSLog(@"Error in opening database :("); database = NulL; } } return database;} 总结 以上是内存溢出为你收集整理的ios – 打开sqlite数据库全部内容,希望文章能够帮你解决ios – 打开sqlite数据库所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)