2012-08-13 78 views
0

我有一個項目,在數據庫中動態創建表。而且我不知道什麼是在某個時刻使用的桌子。並想要這樣的事情: [db executeQuery:@"INSERT INTO %@Table (image) VALUES (?)",tableName,imageData]; 但它沒有奏效。我怎麼解決這個問題?插入數據到非靜態名稱數據庫表(FMDB)

回答

2

您可以創建一個字符串,然後用這個字符串做查詢,類似的東西:

NSString* queryStr = [NSString stringWithFormat:@"INSERT INTO %@(image) VALUES (?) ",tableName]; 
[db executeQuery:queryStr,imageData]; 
1

注意,存在FMDB另一個功能,如果你想使用的格式字符串。您將不得不使用executeQueryWithFormat:而不是executeQuery:

如果tableName是「員工」您的字符串將評估爲:

"INSERT INTO EmployeesTable (image) values (<data>)" 

這就是你想要的東西(即添加字符串「表」表名)?