谓词模板与预处理语句相同吗?

时间:2010-02-14 14:08:03

标签: iphone core-data nspredicate

例如,如果我有这个谓词格式字符串,那么它是否具有与SQL提供的预处理语句相同的安全性好处?

@"name == $LAST_NAME"

我不确定这是否是一个简单的愚蠢替换,仍然允许对核心数据进行错误的“SQL”注入,或者这是否与现代数据库技术中已知的预处理语句一样好?

1 个答案:

答案 0 :(得分:1)

您没有在服务器上运行,任何用户都会获得对sqlite文件的完全访问权限,因此没有任何安全措施可以破坏。

此外,这是一个谓词,它不是一个存储的sql语句。当您的应用程序运行谓词时,核心数据将执行到sql的转换,它不会存储该转换。

简而言之,这里没有什么可担心的。