如何在iPhone中为SQLite编写预备语句?是否可以在使用sqlite db的iPhone应用程序中进行SQL注入?
答案 0 :(得分:2)
我建议如果您现在开始开发iPhone应用程序,您应该使用Core Data而不是直接编写SQLite。话虽如此,创建一个准备好的语句很简单,well documented:
sqlite3_stmt* statement_handle;
sqlite3_prepare_v2(db, "select a,b from Table where c = ?", -1, &statement_handle, NULL);
是的,有可能在编码错误的应用程序中进行SQL注入攻击。使用预处理语句可以避免它。
答案 1 :(得分:0)
除了Core Data之外,我还建议您查看更高级别的iPhone SQLite库,例如:FMDB