- 浏览: 236706 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
lanzhiyuan:
楼主还混这里不?NSData *data = [NSURLCo ...
[转] 为UIWebView实现离线浏览 -
hyc4117:
#define OpenSSLRSAPublicKeyFile ...
IOS openssl rsa encrypt/decrypt -
guogongjun:
确实有效,不错,感谢啦大神
[转]安装openfire后admin无法登录管理控制平台 -
xiongyoudou1:
怎么办,而且你那下载的demo和你讲解的不是一样
[转] 为UIWebView实现离线浏览 -
xiongyoudou1:
有问题。执行到方法NSData *data = [NSURLC ...
[转] 为UIWebView实现离线浏览
1、打开数据库。
2、关闭数据库。
3、插入数据。
4、更新数据。
5、查询数据
//打开数据库 -(BOOL)openDatabase{ NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES); NSString *paths = [[path objectAtIndex:0] stringByAppendingPathComponent:@"NineCellDiaryDB.sqlite3"]; if(sqlite3_open([paths UTF8String], &database) != SQLITE_OK){ [self closeDatabase]; return NO; }return YES; }
2、关闭数据库。
//关闭数据库 -(BOOL)closeDatabase{ return (sqlite3_close(database) == SQLITE_OK)?YES:NO; }
3、插入数据。
//打开数据库 if(![self openDatabase]){ [self closeDatabase]; return NO; } sqlite3_stmt *insert_statement; //准备sql语句 const char* sql = "insert into userinfo(uname,upassword,uexp,uportrait) values(?,?,?,?)"; //绑定语句值 if (sqlite3_prepare_v2(database,sql, -1, &insert_statement, NULL) != SQLITE_OK)return NO; sqlite3_bind_text(insert_statement, 1, [name UTF8String], -1, SQLITE_TRANSIENT); sqlite3_bind_text(insert_statement, 2, [passwd UTF8String], -1, SQLITE_TRANSIENT); sqlite3_bind_int(insert_statement, 3, [e intValue]); //提供png格式和jpg格式支持 int returnValue = -1; NSData *imageData = nil; UIImage *por = [UIImage imageNamed:@"kill.png"]; imageData = UIImagePNGRepresentation(por);//png格式 if (nil == por) { returnValue = sqlite3_bind_blob(insert_statement, 4, nil, -1, NULL); }else { returnValue = sqlite3_bind_blob(insert_statement, 4,[imageData bytes],[imageData length], NULL); } //执行插入 if (sqlite3_step(insert_statement) != SQLITE_DONE) { sqlite3_finalize(insert_statement); [self closeDatabase]; return NO; } sqlite3_finalize(insert_statement); [self closeDatabase];
4、更新数据。
//打开数据库 if(![self openDatabase]){ [self closeDatabase]; return NO; } //准备陈述命令 sqlite3_stmt *update_statement; //准备sql语句 const char* sql = "update userinfo set uname=?,upassword=?,uexp=?,uportrait=? where id=1"; //绑定语句值 if (sqlite3_prepare_v2(database,sql, -1, &update_statement, NULL) != SQLITE_OK)return NO; sqlite3_bind_text(update_statement, 1, [name UTF8String], -1, SQLITE_TRANSIENT); sqlite3_bind_text(update_statement, 2, [passwd UTF8String], -1, SQLITE_TRANSIENT); sqlite3_bind_int(update_statement, 3, [e intValue]); //提供png格式和jpg格式支持 int returnValue = -1; NSData *imageData = nil; UIImage *por = [UIImage imageNamed:@"killer.png"]; if (nil == por) { returnValue = sqlite3_bind_blob(update_statement, 4, nil, -1, NULL); }else { imageData = UIImageJPEGRepresentation(por,1.0f);//jpg格式 returnValue = sqlite3_bind_blob(update_statement, 4,[imageData bytes],[imageData length], NULL); } } //执行 if (sqlite3_step(update_statement) != SQLITE_OK){ sqlite3_finalize(update_statement); [self closeDatabase]; return NO; } sqlite3_finalize(update_statement); [self closeDatabase];
5、查询数据
//打开数据库 if (![self openDatabase]) { return self; } //查询所有数据 sqlite3_stmt *statement; const char* zTail; sqlite3_prepare_v2(database,"SELECT * from userinfo;",-1,&statement,&zTail); const unsigned char *name; const unsigned char *password; int exp=0; NSString *newName = nil; NSString *newPassword = nil; NSData *imgData = nil; [color=green]//sqlite3_reset(statement);[/color] if (SQLITE_ROW == sqlite3_step(statement)) { name = sqlite3_column_text(statement,1); password = sqlite3_column_text(statement,2); exp = sqlite3_column_int(statement,3); if (NULL != sqlite3_column_blob(statement,4)) { imgData = [[NSData alloc] initWithBytes:sqlite3_column_blob(statement,4) length:sqlite3_column_bytes(statement, 1)]; } newName = [NSString stringWithCString:name encoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingUTF8)]; newPassword = [NSString stringWithCString:password encoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingUTF8)]; }
发表评论
-
ios 开发技术
2015-01-09 11:59 741引用 主题:xcode 6制作动态&静态库 连接:ht ... -
ios 错误合集(updated!)
2015-01-09 11:57 797引用 错误:dyld: Library not loaded ... -
几个不错的xcode插件
2014-09-11 13:33 63291、代码补全插件 http://alcatraz.io 2、 ... -
xcode 插件目录
2014-09-11 13:14 456~/Library/Application\ Suppor ... -
GCD 倒计时
2014-08-19 10:00 1008-(void)startTime{ __bloc ... -
Eventkit使用案例
2014-02-15 16:06 3202- (void)createNewEventAndNewR ... -
ios 应用内跳转到系统设置界面的最好写法
2013-04-24 11:43 10164如下是跳转到系统设置诸多界面的url prefs:roo ... -
beeframework "___gxx_personality_sj0", referenced from:错误解决
2013-04-17 13:50 1840到Bee_Precompile.h 找到如下一行: #de ... -
pod update/install git pull 443错误解决
2013-01-22 18:38 2350自从12306.cn抢票插件搞爆github服务器以后,我就再 ... -
[转]如何编写一个CocoaPods的spec文件
2012-12-27 16:25 14308本文转自http://ishalou.com/blog/201 ... -
[转]How to use NSAttributedString in iOS 6
2012-12-25 16:09 2618本文转自:http://soulwithmobiletechn ... -
mac上的小工具(updated)
2012-12-24 18:05 1021mac上显示隐藏文件的命令,如果要隐藏则 -bool fals ... -
github README.md 编辑技巧小结 (updated)
2012-12-18 11:39 20691.文字连接 [文字](http://ace.ajax.org ... -
iOS 怎样更方便使用第三方框架
2012-11-29 12:45 1610管理第三方库越来越成为每个程序员的基本工作,因为每次都要去加入 ... -
CocoaPods:管理 Objective-C 專案裡頭各種 Library 關聯性最棒的方式
2012-11-26 14:53 1041介绍: 开发应用的时候第三方的库是不可缺少的,它能提高开发的 ... -
转载:用HTML5/CSS3/JS开发Android/IOS应用框架大全
2012-11-22 15:16 1262现在,用js调用本地代码已经不是一件新鲜事,已经有成熟的库来做 ... -
core data 分页查询
2012-11-07 11:26 1535NSFetchRequest *request = [[N ... -
[转]从Flurry导出数据
2012-10-17 10:51 1182有时我们需要一些详细 ... -
AFNetworking multipart upload
2012-10-12 14:52 5434+ (NSDictionary*)parametersOf ... -
IOS openssl rsa encrypt/decrypt
2012-09-29 15:15 6383对OpenSSL RSA加解密的封 ...
相关推荐
本文将对Android中的SQLite进行深入的总结,分为以下几个关键知识点: 1. **SQLite数据库介绍**: SQLite是一个开源的、基于SQL的嵌入式数据库,它不需要单独的服务器进程,而是作为应用程序的一部分运行。在...
SQLite是一种轻量级的、开源的、自包含的数据库引擎,广泛应用于移动设备、嵌入式系统以及桌面应用程序。在本文中,我们将深入探讨SQLite...通过不断的练习和应用,你将能够灵活地运用SQLite来满足各种数据管理需求。
### SQLiteODBC 驱动 SQLite3:深入解析与应用指南 #### 一、SQLiteODBC简介 SQLiteODBC是一种连接SQLite数据库与支持...通过本文介绍,希望能帮助大家更好地理解和运用SQLiteODBC,充分发挥其优势,提升工作效率。
Android SQLite 数据库操作报告 一、实验目的 Android 实验报告的主要目的是熟悉 Android 平台的文件操作、掌握 Android SQLite 数据库的设计和应用、熟悉 XML 和 JSON 文件的读取。通过本实验,用户可以掌握 ...
### SQLite3 使用总结 #### 一、SQLite 操作入门与基本流程 SQLite 是一款轻量级的嵌入式数据库系统,适用于多种操作系统...掌握上述基础知识后,开发者可以根据实际需求灵活运用 SQLite 来解决各种数据存储问题。
在IT领域,数据库是不可或缺的一部分,而SQLite是一个轻量级、自包含的、无服务器的SQL...通过不断的实践和学习,你可以更熟练地运用SQLite来处理各种数据库需求。希望这个总结能对你和其他有需要的同学有所帮助!
SQLite是一个开源、轻量级的嵌入式关系型数据库,广泛应用于移动设备、...理解并熟练运用其特性和功能,能够帮助我们构建高效、可靠的数据存储系统。无论是在小型应用还是大型项目中,SQLite都是一个值得信赖的选择。
### SQLite3命令行下的备份与恢复操作详解 #### 一、引言 在数据库管理领域,备份和恢复是一项至关重要的任务。...希望本文能帮助您更好地理解SQLite3命令行下的备份与恢复机制,并在实际应用中灵活运用这些技巧。
总结起来,Node.js操作SQLite3数据库的核心在于理解和运用`node-sqlite3`库提供的API,而对这些API进行封装可以帮助我们简化代码,提高代码的可读性和可维护性。在实际项目中,根据业务场景选择合适的方法,可以有效...
SQLite是一款轻量级的、开源的关系型数据库管理系统,它无需...总结,SQLite在VC环境下使用主要涉及库的配置、API的调用以及错误和事务处理。理解并熟练运用这些知识点,可以轻松地在VC项目中实现数据存储和查询功能。
SQLite3是一款轻量级的数据库管理系统,它被广泛应用于嵌入式系统、移动应用以及需要在本地存储...从理论到实践,从基础操作到高级技巧,通过深入学习和实践,你将能够熟练地运用SQLite3解决各种数据存储和管理问题。
总结来说,SQLite的学习涵盖了虚拟机的运作机制、存储模型的详细解析以及数据库维护中的VACUUM命令。掌握这些基础知识,不仅可以帮助开发者更有效地利用SQLite,还能在设计和优化数据库性能时提供有力的支持。在实际...
总结,这个SQLite数据库教程集合将带你全面了解SQLite的各个方面,无论你是初学者还是有经验的开发者,都能从中受益。通过深入学习和实践,你将能够熟练地运用SQLite构建高效、可靠的数据存储解决方案。
总结起来,这个压缩包提供了一套完整的解决方案,让你能够在Java环境中快速开始使用SQLite数据库,包括了驱动、测试代码以及独立的SQLite命令行工具,方便进行开发和测试工作。通过理解并运用这些组件,你可以轻松地...
SQLite API 接口是开发人员与 SQLite 数据库交互的核心组件,它们提供了...同时,灵活运用 VFS 可以适应各种复杂的环境和需求。记得在使用 SQLite API 时,遵循最佳实践并仔细检查错误返回值,以便及时发现和解决问题。
《数据存储之SQLite详解》 ...通过上述对SQLite的详细介绍,希望读者能够对其有更深入的认识,并能在实际项目中灵活运用。在学习过程中,可以参考提供的链接进一步探索,或者通过实际操作实践加深理解。
这篇“SQLite的简单示例”很可能是通过一个名为“SQL_Demo”的压缩包来展示如何在实际操作中运用SQLite。下面将详细介绍SQLite的一些核心概念、功能以及在实际开发中的应用。 SQLite的主要特点: 1. **轻量级**:...
本文将深入探讨SQLite在iOS应用中的运用,以及源码解析,帮助开发者更好地理解和利用这一强大的数据管理工具。 一、SQLite的基础概念 1. 数据库与表:SQLite提供了一个数据库容器,其中可以创建多个表来存储数据。...
《C# SQLite实战指南——...总结,C#与SQLite的结合提供了高效且灵活的数据存储解决方案。通过理解并实践提供的项目Demo,开发者能更好地掌握SQLite在C#环境中的运用,从而在自己的项目中实现高效、可靠的数据库管理。
本文将深入探讨LitePal与SQLite的关系、工作原理以及如何在实际项目中运用它们。 SQLite是一个开源、嵌入式的关系型数据库,它无需单独的服务器进程,可以直接在应用程序中使用。SQLite支持SQL标准,可以创建、查询...