2014-01-30 52 views
1

請讓我知道如何將數組插入到Sqlite表中。我傳遞2個數組作爲參數。下面是代碼:如何將數組插入Sqlite數據庫

- (空)保存數據:(NSMutableArray的*)firstArray第二:(NSMutableArray的*)secondArray {

[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); 

} 

}

+0

您面臨什麼困難?爲什麼不將數組保存在沙盒文件夾內的XML文件中? –

+0

我有我的價值firstArray和secondArray,因爲它作爲參數傳遞。但我不知道如何將這些值插入到表中。 – user2903572

回答

3

你有你在做什麼多重問題,這似乎源於對SQLite的不熟悉。首先,sqlite不理解數組作爲原始值,更不用說NSMutableArrays了。其次,您試圖將參數中的值傳遞給參數,但您不在任何位置設置參數。我建議this book這應該讓你更好地理解SQLite,或者通過sqlite.org的在線教程

0

插入數組, array1和array2作爲複合主鍵