0

例如,如果我有这个谓词格式字符串,它是否具有与 SQL 提供的预准备语句相同的安全优势?

@"name == $LAST_NAME"

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

4

1 回答 1

1

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

此外,这是一个谓词,它不是一个存储的 sql 语句。当您的应用程序运行谓词时,Core Data将转换为 sql,它不存储该转换。

简而言之,这里没什么好害怕的。

于 2010-02-14T17:40:43.330 回答