FMDB ライブラリを使用する iOS アプリがあります。
7 フィールドの SQLite DB があります (1 つの自動インクリメント、6 つの通常のテキスト フィールド)。
実行しようとしています
[db executeUpdate:@"INSERT INTO messages VALUES (:field1,:field2,:field3,:field4,:field5,:field6)" withParameterDictionary:message];
ただし、フィールドが 6 つしかないため、エラーが発生します。自動インクリメント値が何であるかがわからないため、挿入できません(そのために別のクエリを配置できると思います...)。そして、インジェクションの影響を受けやすい構文を回避しようとしています
NSString* sql = [NSString stringWithFormat:@"insert into messages (%@) values (%@)", [newCols componentsJoinedByString:@", "], [newVals componentsJoinedByString:@", "]];
アドバイスありがとうございます!