<分区>
<分区>
请就 SQLITE 中的 INSERT 或 UPDATE 提供一些建议
我正在使用这个代码
NSString *insertSQL = [NSString stringWithFormat: @"INSERT INTO downloadedBook(bookID, courseID, bookName, bookPath, bookVersion, pageAmount, price, episode) VALUES (\"%@\",\"%@\",\"%@\",\"%@\", %f, %d,%f,\"%@\")",bookID,courseID,bookName,bookPath,bookVersion,pageAmount,price,episode];
用于插入,
和这段代码
NSString *updateSQL = [NSString stringWithFormat: @"UPDATE downloadedBook SET bookID =\"%@\",courseID =\"%@\", bookName =\"%@\", bookPath =\"%@\", bookVersion = %f, pageAmount = %d, price = %f,episode =\"%@\"WHERE bookID =\"%@\""bookID,courseID,bookName,bookPath,bookVersion, pageAmount , 价格, 剧集,bookID];
更新。
它工作正常。现在,我如何在执行这些操作时使用 if
条件?例如,我想检查“如果我有这个,数据将更新”请指教。
我该怎么做请指导我。
最佳答案
确保表有一些唯一约束,例如 bookID INTEGER PRIMARY KEY
。
使用 INSERT OR REPLACE INTO ...
和您拥有的插入语法。如果插入会导致违反约束(例如 bookID
已存在),则首先删除冲突的行,然后插入数据。
还可以考虑对文字使用准备好的语句和 ?
占位符,以防止 SQL 语法问题和注入(inject)攻击,并提高性能。
关于ios - SQLITE 中的条件 INSERT 或 UPDATE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21108473/