如何在 iPhone 中为 SQLite 编写准备好的语句

发布于 2024-07-29 00:36:36 字数 81 浏览 3 评论 0原文

如何在 iPhone 中为 SQLite 编写准备好的语句? 是否可以在使用 sqlite db 的 iPhone 应用程序中进行 SQL 注入?

How to write prepared statements for SQLite in iPhone? Is it possible to do SQL Injection in iPhone apps that use sqlite db?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦屿孤独相伴 2024-08-05 00:36:36

我建议,如果您现在开始开发 iPhone 应用程序,您可能应该使用 Core Data,而不是直接编码到 SQLite。 话虽如此,创建准备好的语句很简单,并且有详细记录

sqlite3_stmt* statement_handle;
sqlite3_prepare_v2(db, "select a,b from Table where c = ?", -1, &statement_handle, NULL);

是的,这是可能的在编码错误的应用程序中进行 SQL 注入攻击。 使用准备好的语句可以在很大程度上避免这种情况。

I would suggest that if you're starting to develop an iPhone app now you should probably use Core Data rather than coding directly to SQLite. Having said that, creating a prepared statement is simple and well documented:

sqlite3_stmt* statement_handle;
sqlite3_prepare_v2(db, "select a,b from Table where c = ?", -1, &statement_handle, NULL);

And yes, it is possible to have SQL injection attacks in a badly coded application. Using prepared statements goes a long way to avoid it.

故乡的云 2024-08-05 00:36:36

除了 Core Data 之外,我还建议查看更高级别的 iPhone SQLite 库,例如: FMDB

Along with Core Data, I'd also recommend looking at a higher level iPhone SQLite library such as: FMDB

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文