- 浏览: 2967165 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (893)
- android (110)
- iphone (198)
- java (79)
- JavaScript手册-目录 (9)
- JavaScript手册-Array (19)
- JavaScript手册-Boolean (5)
- JavaScript手册-Date (50)
- JavaScript手册-Math (30)
- JavaScript手册-Number (14)
- JavaScript手册-RegExp (7)
- JavaScript手册-String (38)
- JavaScript手册-全局函数 (8)
- JavaScript实用脚本 (7)
- Others (21)
- java-jpcap (7)
- java-thread (1)
- ibm文章 (3)
- classloader (2)
- java-filter (2)
- 运行环境 (33)
- java-正则 (2)
- oracle (1)
- linux-shell (26)
- wap (1)
- sqlite (3)
- wow (1)
- jvm (1)
- git (5)
- unity3d (29)
- iap (2)
- mysql (23)
- nginx (14)
- tomcat (9)
- apache (2)
- php (1)
- ubuntu (40)
- rsa (1)
- golang (21)
- appstore (5)
- sftp (2)
- log4j (2)
- netty (18)
- 测试工具 (6)
- memcache (5)
- 设计模式 (1)
- centos (8)
- google_iab (5)
- iOS专题 (4)
- mac (10)
- 安装配置帮助手册 (2)
- im4java_graphicsmagick (5)
- inotify-tools (1)
- erlang (6)
- 微信支付 (1)
- redis (8)
- RabbitMQ (5)
最新评论
-
heng123:
Netty视频教程https://www.douban.com ...
netty4.0.23 初学的demo -
maotou1988:
使用Netty进行Android与Server端通信实现文字发 ...
netty4.0.23 初学的demo -
码革裹尸:
非常感谢,正好用上
android 呼入电话的监听(来电监听) -
rigou:
提示的/222.177.4.242 无法链接到ip地址,是什 ...
通过 itms:services://? 在线安装ipa ,跨过app-store -
duwanbo:
GridView与数据绑定
iphone中数据库sqlite3的使用
第1步:检查数据库sqlite3是否安装。
打开1个终端,输入命令:
sqlite3
如果显示下面的信息,表示电脑上已经安装了sqlite3数据库了。
SQLite version 3.7.5
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
第2步:创建1个database。
例如,我们要创建一个名为stephen.db的database,则输入下面的命令:
sqlite3 stephen.db
如果,在当前目录下已经存在了stephen.db文件,则执行上面命令后就会打开stephen.db;如果原来不存在,则会新创建这个stephen.db文件。
执行下面命令,查看stephen.db是否创建成功。
.table
该命令正常执行后,会显示数据库中全部数据表的名称。
如果显示如下信息,表示stephen.db没有创建成功。
Error: unable to open database "stephen.db": unable to open database file
遇到该情况后,一般是当前终端用户权限导致的。你可以通过执行命令 whoami 来查看当前终端对应的账号(假设是tom),然后进入到tom用户主目录 /Users/tom ,然后执行 sqlite3 stephen.db 命令,就可以成功了。
第3步:创建1个表并增加表的记录。
在stephen.db中创建1个表,表名为 t1_user
create table t1_user(us_user,us_password,us_age);
增加表的记录:
insert into t1_user values('stephen','12345678',1); insert into t1_user values('jingle','hello',2);
第4步:新建一个iphone项目。
(1)在项目的Resources中将上面创建的stephen.db导入进来。
鼠标右键点击Resources,然后选择Add/Existing Files...,找到并选择上面创建的stephen.db文件,然后点按钮[Add]
选中 Copy items into destination group's folder(if needed),然后再点按钮[Add]。
(2)在项目的Frameworks中引入sqlite3的数据库驱动lib库。
鼠标右键点击 Frameworks,然后选择Add/Existing Frameworks...,找到并选择libsqlite3.0.dylib, 然后点按钮[Add]。
(3)实例代码如下:
//database数据库文件名 NSString *databaseFileName=@"stephen.db"; //取得当前应用的主目录 //例如:/Users/tom/Library/Application Support/iPhone Simulator/4.2/Appli // cations/29FE1D23-CDFA-46FE-A82B-275679F7E365/Documents //其中的tom代表你的帐号目录 //其中的29FE1D23-CDFA-46FE-A82B-275679F7E365是当前应用对应的目录,不同应用该值是不同的 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory=[paths objectAtIndex:0]; //取得当前应用主目录数据库文件存储路径 NSString *dbFile=[documentsDirectory stringByAppendingPathComponent:databaseFileName]; NSLog(@"dbFile=%@",dbFile); //检查数据库文件是否存在 NSFileManager *fileManager=[NSFileManager defaultManager]; BOOL find=[fileManager fileExistsAtPath:dbFile]; BOOL copySuccessed = NO; if (!find) { //取得当前应用的Resources目录中的数据库文件路径 NSString *srcDbFile=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:databaseFileName]; //将当前应用Resources目录中的数据库文件复制到应用的主目录下 copySuccessed=[fileManager copyItemAtPath:srcDbFile toPath:dbFile error:nil]; if (copySuccessed) { NSLog(@"copy successed."); }else { NSLog(@"copy failed."); } } if (find || copySuccessed) { NSLog(@"db exists."); sqlite3 *db; sqlite3_stmt *stmt; @try { //sqlite3_open :获得数据库连接(连接放入db中) if (sqlite3_open([dbFile UTF8String], &db)!=SQLITE_OK) { NSLog(@"Error:open db file"); }else { NSLog(@"open db is OK."); //start query NSString *sql=@"select * from t1_user"; //sqlite3_prepare_v2:执行数据库查询 if (sqlite3_prepare_v2(db, [sql UTF8String], -1, &stmt, NULL)==SQLITE_OK) { //sqlite3_step:获取纪录 while(sqlite3_step(stmt)==SQLITE_ROW) { int index=0; NSString *columnName=[NSString stringWithUTF8String: (const char *)sqlite3_column_name(stmt, index)]; NSString *info=[NSString stringWithUTF8String: (const char*)sqlite3_column_text(stmt, index)]; NSLog(@"%@=%@",columnName,info); } } } } @catch (NSException * e) { NSLog(@"error:%@",[e reason]); } @finally { NSLog(@"finally"); int dbResult; dbResult=sqlite3_finalize(stmt); if (dbResult==SQLITE_OK) { NSLog(@"stmt free successed"); }else { NSLog(@"stmt free failed:%i",dbResult); } dbResult = sqlite3_close(db); if (dbResult==SQLITE_OK) { NSLog(@"db free successed"); }else { NSLog(@"db free failed:%i",dbResult); } } }else { NSLog(@"db does not exists."); }
代码执行显示结果:
2012-03-16 16:21:59.449 DbDemo[39058:9203] dbFile=/Users/hanshu/Library/Application Support/iPhone Simulator/4.2/Applications/29FE1D23-CDFA-46FE-A82B-275679F7E365/Documents/stephen.db
2012-03-16 16:21:59.450 DbDemo[39058:9203] db exists.
2012-03-16 16:21:59.451 DbDemo[39058:9203] open db is OK.
2012-03-16 16:21:59.453 DbDemo[39058:9203] us_user=stephen
2012-03-16 16:21:59.454 DbDemo[39058:9203] us_user=jingle
2012-03-16 16:21:59.455 DbDemo[39058:9203] finally
2012-03-16 16:21:59.460 DbDemo[39058:9203] stmt free successed
2012-03-16 16:21:59.461 DbDemo[39058:9203] db free successed
发表评论
-
iOS程序运行生命周期
2015-11-10 09:05 966iOS程序运行生命周期 在文件AppDele ... -
iOS开发系列--IOS程序开发概览
2015-11-10 07:32 1182iOS开发系列--IOS程序开发概览 概览 ... -
2015年11月Xcode7.1(7B91b)打包发布苹果iOS应用指南
2015-11-09 18:29 108862015年11月Xcode7.1(7B91b) ... -
self.navigationController pushViewController执行不成功
2015-11-06 08:28 1615self.navigationControlle ... -
ios NSString format 保留小数点 float double
2015-11-05 17:37 2936ios NSString format 保留小数点 f ... -
自定义 URL Scheme 完全指南
2015-11-04 16:21 904自定义 URL Scheme 完全指南 转载 htt ... -
UIViewController生命周期方法viewDidLoad、viewWillAppear和viewDidAppear
2015-11-01 12:29 2957UIViewController生命周期 ... -
关于self.view.window与viewDidLoad、viewWillAppear、viewDidAppear
2015-11-01 09:36 2543关于self.view.window与viewD ... -
UIScreen学习记录
2015-10-31 08:18 1061UIScreen学习记录 转载自 ... -
使用NSTimer和CGAffineTransformMakeRotation实现旋转动画
2015-10-29 11:53 1829使用NSTimer和CGAffineTransform ... -
【原】iOSCoreAnimation动画系列教程(一):CABasicAnimation【包会】
2015-10-29 08:59 1027【原】iOSCoreAnimation动 ... -
iOS 在UILabel显示不同的字体和颜色
2015-10-27 08:07 1559在项目开发中,我们经常会遇到在这样一种情形:在一个UI ... -
UISlider滑动条的属性介绍以及于标签联合使用实时显示变动值
2015-10-27 08:06 1259UISlider滑动条的属性 ... -
关于使用DSLTableView下拉刷新数据遇到的问题
2015-10-23 21:17 944关于使用DSLTableView下 ... -
使用AdSupport.framework生成IDFA唯一标识符
2015-10-23 17:29 4710使用AdSupport.framework生成IDFA ... -
AppDelegate的详解
2015-10-22 17:51 681AppDelegate的详解 ... -
iOS开发问题集锦
2015-10-22 13:06 5301. Xcode开发连真机运行报错Please ver ... -
iOS 对象属性参数名定义的注意事项不能以alloc,new,copy,mutableCopy 作为开头命名
2015-10-21 15:41 1327property's synthesized g ... -
iOS-自定义的画圆或弧的UIView
2015-10-21 14:20 2656iOS-自定义的画圆或弧的UIView Cu ... -
iOS自定义的模态提示对话框
2015-10-20 14:27 6478iOS自定义的模态提示对话框 基本思路: 1.创建 ...
相关推荐
iphone开发SQLite数据库使用 简单方便
自己找的有关sqlite3的一些基本知识,里边也有几个例子,sql语句等等,希望对你有用,
iOS数据库SQLite3基本操作并将内容显示在tableView中
在iPhone中简单应用Sqlite3.0数据库,实现创建表,初始化数据,带参查询,简单查询,以及插入数据信息。
iphone开发在很多时候都需要用到数据库.这里给出了一个数据库sqlite的封装.教你怎么使用sqlite3 .当你在作项目的时候无需在自己去写.直接放进去就可以方便的调用数据库.
sqlite persistent objects iphone数据库操作源码sqlite persistent objects iphone数据库操作源码sqlite persistent objects iphone数据库操作源码
写了一个比较简单的SQLite3的简单demo只实现了增加 更新 删除 获取全部数据 查找 数据库操作部分有详细注释 界面也比较简陋主要是实现一下数据库部分 有问题请与我邮件联系 decemberd@163.com 谢谢
iPhone手机开发中运用sqlite3的使用案例 教程,恕时间限制不能给出说明,以后可以
这是我学习iPhone开发时做的一个小练习,基于SQLite数据库的列车时刻查询软件,纯属入门级,初学iPhone开发的朋友可以看看,聊胜于无:) 备注:项目工程基于XCODE 4.1
Iphone 中添加 数据库功能的应用实例! 已经本人测试,可编译和运行,当然也可以实现你想要的数据库功能! 简单易学!
http://blog.csdn.net/totogo2010/article/details/7702207 IOS sqlite数据库操作 iphone 例子
一、关系型数据库SQLIte 每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库—SQLite。SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计...
MAC 下的数据库管理软件,方便在IOS开发中管理SQLite数据库,从此告别终端,亲,记得给好评哦。
使用FMDB开发 iphone,ipad上的数据库SQLite
一款可以恢复sqlite db 数据库删除信息的工具。如果删掉了sqlite db里面的数据,可以用这个工具查看已删除的记录,上传到资源里面了,可以去下载
打开Finder窗口并导航到主目录,然后在主目录中向下展开Library/Application Support/iPhone Simulator/在该目录下找到你的应用程序的Docments文件夹就可以找到你在数据库中保存的表; 在Finder窗口中资源文件夹...
这个程序需要在Mac 10.7或更新的版本上运行。 这里我用的数据库是sqlite3数据库,里面是用代码创建的表单。 所以这个很适合初学者学数据库。
SQLite Database Browser可以管理所有iphone数据,是用来处理SQLite3数据库文件的应用程序,它能够打开sqlite3数据库文件(常见的文件扩展名为.db,.db3, .s3db; 只要文件是SQLite3数据库文件,其扩展名不规范也不要紧...
使用SQLite创建数据库,然后用FMDB对其操作得到数据。相信你下了后一定能明白是怎么用FMDB来实现操作数据iphone数据库的。