Tag: sqlite

具有预填充的SQLite数据库的iOS船舶应用程序

我想运送我的ios应用程序(用swift编写)与我预填充的sqlite数据库,将通过与服务器同步更新。 在Android中,我可以将数据库从assests文件夹移动到数据库和volla,但在ios我很安静,我怎么能实现这一目标? 谢谢

在SQLite中select语句来识别行号

我想写这样的SQLite语句: SELECT * FROM Table WHERE RowNumber BETWEEN 1 AND 10; 但是我没有这样的RowNumber列。 我在我的表中有主键。 但是,有没有行号默认情况下,我可以使用? 另外我正在search有关编写更复杂的SQLite语句的信息。 所以如果你在书签中有一些链接,请分享。 谢谢。

在iOS上encryptionSQLite数据库文件

我的客户问我是否可以encryption他的iOS SQLite文件。 我检查了这两个资源: encryption和解密Sqlite文件(使用核心数据) http://support.apple.com/kb/HT4175 请纠正我,如果我错了,文件将被encryption,所以没有人能够破解它(虽然这将是可能的一个坚定的cookies,我认为)。 核心数据查询将照常运行吗? 我的意思是没有性能损失,既不是一个不同的API。

如何在Core Data中有效地插入和获取UUID

我正在寻找一种有效的方法来在Core Data中存储和searchUUID。 这些UUID是由分布式系统中的许多iOS设备生成的。 这些设备中的每一个可以存储大约20-50k的UUID。 很显然,将UUID作为string存储在核心数据中会损害索引的效率。 但经过一系列的研究后,我发现将UUID作为二进制数据存储在核心数据(和索引它)可能不如string存储效率 。 由于在SQLit中不支持类似BINARY或VARBINARY的数据types。 我猜测核心数据中的任何二进制数据types的数据在SQLit中存储为BLOB。 由于BLOB可能是最慢的数据types被索引,会对性能造成不良影响。 那么任何人都可以帮助回答,有没有一种更有效的方式来存储UUID在核心数据?

删除sqlite的WAL文件是否安全?

在iOS应用程序中,Core Data有一个奇怪的问题,WAL文件有时会变得很大 (〜1GB)。 看来还有其他人有这个问题(例如, 当插入〜5000行时,Core Data的sqlite-wal文件会获得MASSIVE(> 7GB) )。 我最初的想法是在应用程序启动时删除WAL文件。 从阅读关于此事的sqlite文档看来,这将是好的。 但是,有没有人知道这样做的缺点? 我当然想深入了解WAL文件为什么会变得如此之大,但是我现在还不能深究,并且想深入研究这个问题。 值得指出的是我的Core Data数据库更像是一个caching。 因此,如果我丢失了WAL中的数据,这并不重要。 我真正需要知道的是,如果我删除WAL,数据库是否会完全损坏? 我的怀疑是否定的,否则WAL不符合其目的之一。

好的教程或在IOS 7中使用Core.Data

我一直在尝试使用这个教程 。 但我希望它被保存在主线程以外的线程中。 到目前为止,我无法得到上面的教程工作? 我也试过这个 有任何想法吗?

在Xcode中访问数据库时,SQLite不会准备查询

我是一个初学者的iPhone开发者,试图从Xcode 4.3中的sqlite数据库中获取信息。 我的数据库(名为DB_Info.sqlite)与我的.h和.m文件位于同一个目录中,并且还将数据库拖到Xcode中左侧栏的文件夹部分。 你能不能快速看看我的代码,让我知道我的错误在哪里? 我已经使用NSLog来确定问题发生的位置,最后是if语句,并且写在注释中。 提前谢谢你! #import <sqlite3.h> @implementation Player { sqlite3 *DB_Info; NSString *databasePath; NSString *docsDir; NSArray *dirPaths; } -(Player*)createPlayer:(NSString*)playerName { dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); docsDir = [dirPaths objectAtIndex:0]; databasePath = [[NSString alloc] initWithString: [docsDir stringByAppendingPathComponent: @"DB_Info.sqlite"]]; const char *dbpath = [databasePath UTF8String]; sqlite3_stmt *statement; if (sqlite3_open(dbpath, &DB_Info) == SQLITE_OK) { //works fine […]

更新没有XML的sqlite数据库

我的应用程序需要来自sqlite数据库的数据。 它将附带这个数据库的一个版本,但我需要定期更新(最可能每月一次)。 通常情况下,我一直在通过我设置的一堆web服务将XML应用的其他部分的更新发送给XML,但是现在我正在使用的这个特定的数据库非常大(大约20-30 MB)当我尝试以这种方式发送超时错误。 我试图将数据库放在公司服务器上,然后将其下载到一个NSData对象中。 然后,我将该数据对象保存到我的应用程序的Documents目录中。 当我重新启动我的应用程序,我得到一个错误,说:“path文件似乎不是一个SQLite数据库”。 代码如下。 // Download data NSURL *url = [NSURL URLWithString:@"http://www.mysite.net/download/myDatabase.sqlite"]; NSData *fileData = [[NSData alloc] initWithContentsOfURL:url]; NSLog(@"%@",fileData); // Writes a bunch of 8 character (hex?) strings // Delete old database NSError *error; NSURL *destination = [app applicationDocumentsDirectory]; destination = [destination URLByAppendingPathComponent:@"myDatabase"]; destination = [destination URLByAppendingPathExtension:@"sqlite"]; NSLog(@"destination = %@",destination); [[NSFileManager […]

链式expression式在Core Data中执行计算

首先:新年快乐:-) 我正在尝试做什么 我试图在核心数据中划分两个属性,然后计算这些分区的平均值。 属性由关键path(例如eur , usd , aud )指定。 示例:我有以下数据集: date eur usd aud —————————— 2010-01-01 0.5 1.0 1.5 2010-01-02 0.6 1.1 1.6 2010-01-03 0.4 1.0 1.3 将两个属性分开,例如eur / usd与下面的结果… divide eur / usd: —————— 2010-01-01 0.5 2010-01-02 0.54 2010-01-03 0.4 …然后计算这些数字的平均值(0.5 + 0.54 + 0.4)/3 = 0.48 我的代码 由于我想这些计算由Core Data直接执行,所以我创build了以下expression式和获取请求: NSExpression *fromCurrencyPathExpression = [NSExpression […]

iOS离线数据存储教程

我是iOS开发新手,正在寻找解释如何在互联网访问时下载数据(XML或JSON)的教程(或更多)(通过单击“刷新”button)以及如何将其存储以供以后使用SQLite数据库。 你能指点我一个教程,解释如何实现这一目标?