Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何将数组插入Sqlite数据库_Ios_Objective C_Arrays_Sqlite_Nsmutablearray - Fatal编程技术网

Ios 如何将数组插入Sqlite数据库

Ios 如何将数组插入Sqlite数据库,ios,objective-c,arrays,sqlite,nsmutablearray,Ios,Objective C,Arrays,Sqlite,Nsmutablearray,请告诉我如何将数组插入Sqlite表。我将传递2个数组作为参数。代码如下: -(void)saveData:(NSMutableArray*)第一个数组第二个:(NSMutableArray*)第二个数组{ [self openDB]; NSString *createSQL = @"CREATE TABLE IF NOT EXISTS Table1" “(EID INTEGER PRIMARY KEY, Array1 TEXT, Array2 TEXT);"; char *errorMsg;

请告诉我如何将数组插入Sqlite表。我将传递2个数组作为参数。代码如下:

-(void)saveData:(NSMutableArray*)第一个数组第二个:(NSMutableArray*)第二个数组{

[self openDB];

NSString *createSQL = @"CREATE TABLE IF NOT EXISTS Table1"
“(EID INTEGER PRIMARY KEY, Array1 TEXT, Array2 TEXT);";
char *errorMsg;
if (sqlite3_exec (database, [createSQL UTF8String],
                  NULL, NULL, &errorMsg) != SQLITE_OK)
{
    sqlite3_close(database);
    NSAssert(0, @"Error creating table: %s", errorMsg);
}

    char *update = "INSERT OR REPLACE INTO Table1 (ID, Array1, Array2)"
    "VALUES (?, ?, ?);";
    errorMsg=NULL;
    sqlite3_stmt *stmt;
    if (sqlite3_prepare_v2(database, update, -1, &stmt, nil)
        == SQLITE_OK) {

        Please let me know how to insert the data.

        if (sqlite3_step(stmt) != SQLITE_DONE)
            NSAssert(0, @"Error updating table: %s", errorMsg);
        sqlite3_finalize(stmt);

}

}

您在所做的工作中遇到了多个问题,这似乎是由于不熟悉SQLite造成的。首先,sqlite不将数组理解为基本值,更不用说NSMutableArray了。第二,您试图将值作为参数传入,但没有在任何地方设置参数。我建议您使用哪种方法来更好地理解SQLite,或者浏览SQLite.org上的在线教程来插入数组,您必须使用一对多关系
因此,您需要为exid和array1以及array2创建表contan作为复合主键

JSON1扩展为管理(JSON)数组提供基本支持。它需要 SQLite版本3.9.0(2015-10-14)。有关详细信息,请参阅:


您面临什么困难?为什么不将数组保存在沙盒文件夹中的XML文件中?我的值作为参数传递到firstArray和secondArray中。但我不知道如何将这些值插入表中。