`
woodn_z
  • 浏览: 44919 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论

IPhone中SQLite3的使用

阅读更多

以下是一些SQLite3的基本操作,主要是写给自己温习,同时也希望能帮到像我一样的新手!

注意:要在工程中的Frameworks中导入相应的libsqlite3.dylib文件,也许在相应的目录下存在多个以libsqlite3开头的文件,务必选择libsqlite3.dylib,它始终指向最新版的SQLite3库的别名。

打开数据库:


NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString *documentsDirectory = [paths objectAtIndex:0];

    NSString *path = [documentsDirectory stringByAppendingPathComponent:@"database.sqlite"];//database.sqlite为自己定义数据库名称

    NSFileManager *fileManager = [NSFileManager defaultManager];

    databasePath_ = path;

    BOOL find = [fileManager fileExistsAtPath:path];

    if (!find) {		

		NSString *rePath = getBundleFilePath(@"database", @"sqlite");

		NSData *dataFile = [NSData dataWithContentsOfFile:rePath];

		[dataFile writeToFile:databasePath_ atomically:YES];

	}
	NSLog(@"Database file have already existed.");

	if(sqlite3_open([path UTF8String], &database_) != SQLITE_OK) {

		sqlite3_close(database_);

		NSLog(@"Error: open database file.");
	}


创建数据库:


NSString *creatSQL = @"CREATE TABLE IF NOT EXISTS FIELDS (ROW INTEGER PRIMARY KEY, FIELD_DATA TEXT);";

	if (sqlite3_exec(database, [creatSQL UTF8String], NULL, NULL, &errorMsg) != SQLITE_OK) {

		sqlite3_close(database);

		NSLog@"Error creating table");
	}



对表的操作,以查询为例


NSString *query = @"SELECT ROW, FIELD_DATA FROM FIELDS ";

sqlite3_stmt *statement;

	if (sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil) != SQLITE_OK) {
		while (sqlite3_step(statement) == SQLITE_ROW) {

			int row = sqlite3_column_int(statement, 0);//第一列

			char *rowData = (char *)sqlite3_column_text(statement, 1);//第二列
			
			NSString *fieldValue = [[NSString alloc] initWithUTF8String:rowData];
			
			[fieldValue release];
		}
		sqlite3_finalize(statement);
	}

分享到:
评论

相关推荐

    iPhone中Sqlite的使用

    只需包含必要的头文件`#import <sqlite3.h>`,就可以在Objective-C代码中使用SQLite API。 2. **创建数据库**: 首先,你需要在应用程序的沙盒中创建一个SQLite数据库文件。可以使用`sqlite3_open()`函数来打开或...

    iphone开发SQLite数据库使用

    本文将详细介绍如何在iPhone开发中使用SQLite数据库,并通过具体的示例来帮助读者更好地理解和掌握这一技术。 #### 二、SQLite数据库概述 SQLite是一种开源的嵌入式数据库引擎,它不依赖于服务器进程,而是直接...

    iphone数据库sqlite3的使用基础操作

    通过上述知识点的介绍,我们了解了 SQLite3 在 iPhone 数据库应用中的基本使用方法,包括如何打开和关闭数据库、执行 SQL 语句、准备和执行预编译语句以及如何获取查询结果等。这些基础知识对于在 iOS 平台上开发...

    iphone SQLite3进行数据持久化实例

    本实例将聚焦于如何在iPhone应用中使用SQLite3进行数据持久化操作。 SQLite3是一个嵌入式的SQL数据库引擎,它不需要独立的服务进程,可以直接集成到应用程序中。与Core Data相比,SQLite3提供了更直接的SQL语句操作...

    Iphone中的SQLite 可运行的实例

    "Iphone Persistence SQLite"这个压缩包文件可能包含了实现上述功能的源代码,你可以通过阅读和运行这些代码来加深对SQLite在iOS应用中使用方法的理解。同时,这也是一个实践的好机会,你可以根据自己的需求修改和...

    iphone 开发 xcode 源代码 数据库 database sqlite3 的使用封装函数.

    本文将详细介绍如何在Xcode中使用SQLite3进行iPhone开发,并提供一个封装好的源代码示例。 首先,我们需要了解SQLite3的基本概念。SQLite3是一个关系型数据库管理系统,它的数据以表格的形式存储,表格之间可以通过...

    iphone下SQLite3数据库demo

    写了一个比较简单的SQLite3的简单demo只实现了增加 更新 删除 获取全部数据 查找 数据库操作部分有详细注释 界面也比较简陋主要是实现一下数据库部分 有问题请与我邮件联系 decemberd@163.com 谢谢

    最新的iphone sqlite小程序

    通过学习和实践"最新的iPhone SQLite小程序",开发者不仅可以掌握如何在iOS应用中使用SQLite,还能了解到如何有效地管理数据,提升应用的用户体验。同时,熟悉SQLite也将为开发者在其他平台或项目上的数据库操作打下...

    iOS上的sqlite3库

    使用`sqlite3_column_*()`函数获取查询结果中的列值。 6. **事务处理**: SQLite支持事务操作,可以使用`BEGIN`, `COMMIT` 和 `ROLLBACK` 语句确保数据的一致性。在发生错误时,可以通过回滚事务来保护数据的完整性...

    iphone开发,sqlite数据库案例

    本案例将探讨如何在iPhone应用中集成并使用SQLite3。 首先,你需要在Xcode项目中引入SQLite3库。这可以通过在“Build Phases”设置中添加`libsqlite3.tbd`或`libsqlite3.dylib`库来完成。确保你的目标平台支持这个...

    sqlite3命令总结

    ### SQLite3 命令总结 #### 一、SQLite3 概述 SQLite 是一种轻量级的数据库管理系统,它采用文件存储的方式,因此仅需一个文件即可完成所有功能,非常便于集成到各种应用程序中。由于其轻便、高效的特点,SQLite 在...

    IOS数据库操作SQLite3使用详解

    在Xcode项目中,要使用SQLite3,首先需要将`libsqlite3.0.dylib`库添加到项目框架中。这可以通过在项目设置的"Frameworks"目录下右键点击并选择`libsqlite3.0.dylib`完成。库的路径通常位于`/Developer/Platforms/...

    iphone sqlite

    学习和理解如何在iPhone应用中使用SQLite是iOS开发中的基本技能,这有助于开发出功能丰富的、能够离线存储数据的应用。通过这样的练习,开发者可以更好地掌握数据库操作,提高应用的性能和用户体验。在实际项目中,...

    iOS数据库SQLite3基本操作并将内容显示在tableView中

    你可以直接在Objective-C或Swift项目中使用。 2. **创建数据库**: 使用`sqlite3_open()`函数打开或创建数据库文件。例如: ```objc sqlite3 *database; if (sqlite3_open([databasePath UTF8String], &database)...

    iphone sqlite 例子

    SQLite3库是iOS SDK的一部分,可以直接在Objective-C项目中使用。首先,我们需要导入`sqlite3.h`头文件,然后初始化数据库连接。 3. **创建数据库** 要创建一个新的SQLite数据库,我们需要调用`sqlite3_open()`...

    FMDBdemo (使用FMDB 开发iphone SQLite)

    标题 "FMDBdemo (使用FMDB 开发iPhone SQLite)" 提及的是在iOS平台上使用FMDB库进行SQLite数据库开发的应用示例。FMDB是Objective-C的一个SQLite封装库,它为iOS开发者提供了一种简单而强大的方式来操作SQLite...

    ios SQLite语句整理大全

    在iOS中使用SQLite的过程中,需要了解以下重要结构体和主要函数: * `sqlite3 *pdb`:数据库句柄,跟文件句柄`FILE`很类似。 * `sqlite3_stmt *stmt`:这个相当于ODBC的Command对象,用于保存编译好的SQL语句。 * `...

    iphone-sqlite

    这个文件可能包含预填充的数据,用于展示如何读取和解析SQLite数据库内容,也可能包含了相关的代码示例,展示如何在Objective-C或Swift中使用SQLite API。 在iOS开发中,SQLite通常通过系统提供的`FMDB`库或者苹果...

    基于SQLite3的Android手机数据恢复技术的研究

    SQLite3数据库文件由多个Btree结构构成,索引使用B-Tree,而表数据则使用B+Tree结构。 数据恢复过程分为两个关键步骤:找到删除数据的页和恢复底层流文件中的数据。首先,通过十六进制编辑器检查Android手机中的...

Global site tag (gtag.js) - Google Analytics