Tag: sqlite3

从sqlite数据库中检索数据nsdata并在webView中查看它们

我已经存储在我的本地数据库(sqlite3)从webview采取的HTML页面。 我把它全部记忆为nsdata。 添加,我想保存在数据库中的页面出现在另一个webview。 我的代码是: NSString *query = [NSString stringWithFormat:@"select * from offRss where idRss=%d", self.recordIDToEdit]; // Load the relevant data. NSArray *results = [[NSArray alloc] initWithArray:[self.dbManager loadDataFromDB:query]]; // Set the loaded data to the textfields. NSData *URL; URL = [[results objectAtIndex:0] objectAtIndex:[self.dbManager.arrColumnNames indexOfObject:@"body"]]; NSString *stringa=[[NSString alloc]initWithData:URL encoding:NSUTF8StringEncoding]; NSLog(@"%@",URL); [self.webView loadHTMLString:stringa baseURL:nil]; 但是这种方法不起作用。 它给了我一个错误: -[__NSCFString bytes]: […]

iOS Sqlite3 SQLITE_ERROR

我有一个iOS应用程序的function,从数据库中读取一些数据。 该function非常简单: -(void) readCategories { sqlite3 *database; if([[NSFileManager defaultManager] fileExistsAtPath:databasePath]){ if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) { const char *sqlStatement = "SELECT * FROM Categories ORDER BY name COLLATE NOCASE ASC"; sqlite3_stmt *compiledStatement; int errorCode = sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL); if(errorCode == SQLITE_OK) { while(sqlite3_step(compiledStatement) == SQLITE_ROW) { [categories addObject:[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 1)]]; } } […]

如何在iOS应用程序中从FMDB中的两个不同数据库连接两个表

我的情况是这样的。 出于安全原因,我决定将应用程序数据放到包和用户数据文件目录中。 问题是如何从不同的数据库中join表格? 如果不可能的话,我必须创build一个表到文件目录中的数据库?

sqlite3更新不能在ios中工作

我正在尝试更新sqlite数据库。 这是我正在使用的代码 if(sqlite3_open([dbPath UTF8String], &database) == SQLITE_OK) { const char * sql; sql = "update tms set name = ?,place=?,stars=? where id=?"; sqlite3_stmt *selectStatement; //prepare the select statement int returnValue = sqlite3_prepare_v2(database, sql, -1, &selectStatement, NULL); if(returnValue == SQLITE_OK) { sqlite3_bind_text(selectStatement, 1,[[payloadDict valueForKey:@"userName"] UTF8String] , [[payloadDict valueForKey:@"userName"] length],SQLITE_STATIC); sqlite3_bind_text(selectStatement, 2,[[payloadDict valueForKey:@"locName"] UTF8String], [[payloadDict valueForKey:@"locName"] length],SQLITE_STATIC); […]

我如何检索SQLite表中的所有行?

你好我正在做一些数据库操作的iPhone ..请任何人都可以解释我如何检索表中的所有行..在这个例子中,它只检索最新input的数据.. while(sqlite3_step(statement) == SQLITE_ROW) { char *field1 = (char *) sqlite3_column_text(statement,0); NSString *field1Str = [[NSString alloc] initWithUTF8String: field1]; char *field2 = (char *) sqlite3_column_text(statement,1); NSString *field2Str = [[NSString alloc] initWithUTF8String: field2]; NSString *str = [[NSString alloc] initWithFormat:@"%@::%@",field1Str, field2Str]; textv.text=str; [field1Str release]; [field2Str release]; }

NSString转换为小写的崩溃

xcode 4.6(4H127),xcode 4.6.3(4H1503):具有重音字符的string的简单的低/大写转换会根据Deployment Target的设置而崩溃。 代码片段: NSString *lc1 = @"Bosnië-Herzegovina"; NSString *lc2 = [lc1 lowercaseString]; NSString *uc3 = [lc1 uppercaseString]; NSLog( @"\nlc1=%@\nlc2=%@\nuc3=%@ ", lc1,lc2,uc3); “ë”只是input为“opt-u e”,源代码文件是常规的UTF Unicode。 lc1在debugging器中看起来如预期的那样。 但是,lc2和uc3string在末尾附加了“中文”字符,部署目标<6.1。 随着6.1的select,汉字不见了。 所有这些可能只是debugging器的UTF兼容性,但是对于部署目标5.0-5.1,代码片断甚至崩溃,如下所示,这是我的问题; 在我的实际应用程序中的string不是在源代码,而是从SQLite数据库。 那么,在这个时候,我只能build立我的应用程序部署目标6.0 +? 我错过了什么吗? 0x1c49a20: incl %eax 0x1c49a21: jmp 0x1c499fb ; CFUniCharMapCaseTo + 1275 0x1c49a23: movl 12(%ebp), %eax 0x1c49a26: movw $105, (%eax) 0x1c49a2b: movw $775, […]

从sqlite3表中提取数据

当用户试图在同一date(date是主键)进行两个或多个条目时,我试图从特定行中提取数据。 在我的.h文件中 @interface PunchClock : UIViewController{ sqlite3 *db; } -(NSString *) filePath; -(void)openDB; -(void) createTable: (NSString *) tableName withField1:(NSString *) field1 withField2:(NSString *) field2 withField3:(NSString *) field3; 在我的.m文件(不知道是否需要任何以下的代码来解密我的问题,但是不pipe怎么样都不行) -(void) createTable: (NSString *) tableName withField1:(NSString *) field1 withField2:(NSString *) field2 withField3:(NSString *) field3; { char *err; NSString *sql=[NSString stringWithFormat:@" CREATE TABLE IF NOT EXISTS '%@'('%@' TEXT […]

SQLite 3“SQL错误”内存不足“(7)”objc

嗨,任何人都可以指出我做错了吗? 错误是这样的: SQL error 'out of memory' (7) – (NSArray *)RecipeInfo { NSMutableArray *retval = [[NSMutableArray alloc] init]; NSString *query = [NSString stringWithFormat:@"SELECT key, name FROM recipes WHERE type = \'%@\'", self.RecipeType]; NSLog(query); sqlite3_stmt *statement; if (sqlite3_prepare_v2(_database, [query UTF8String], -1, &statement, NULL) != SQLITE_OK) { NSLog(@"[SQLITE] Error when preparing query!"); NSLog(@"%s SQL error '%s' (%1d)", […]

如何在我的iOS项目中添加和执行.sql文件?

我发现在iOS中使用SQLite数据库的许多教程,但还没有发现任何直接引用.sql文件的教程。 任何人都可以告诉我如何将现有的SQL数据库链接到我的应用程序? 编辑:这是一个MySQL转储。 我们有一个基于浏览器的闪存卡程序,我们现在正在为Android和iOS设备进行复制。 该文件已经有语句来创build表和填充数据,但我不知道如何在应用程序中使用该数据。 我可能想要使用NSSearchPathForDirectoriesInDomains?

sqlite3_prepare_v2 / sqlite3_exec

几个关于sqlite3的问题: 什么时候需要使用第一种方法,何时使用另一种方法? 这是他们之间的区别? sqlite3_prepare_v2(_contactDB, sql_stmt_getIdRecepteur, -1, &sqlStatement, NULL); 和 if(sqlite3_prepare_v2(_contactDB, sql_stmt_getIdRecepteur, -1, &sqlStatement, NULL) == SQLITE_OK) {} 2.什么时候最需要使用“sqlite3_exec”而不是“sqlite3_prepare_v2”? 3.什么时候需要使用第一个,第二个或第三个: while(sqlite3_step(sqlStatement) == SQLITE_ROW){} if(sqlite3_step(sqlStatement) == SQLITE_ROW){} if(sqlite3_step(sqlStatement) == SQLITE_DONE){} 先谢谢你