防止在C++ OTL,DTL或SOCI库中进行SQL注入

Bre*_*ier 6 c++ database sql-injection soci otl

我一直在关注这三个数据库库,我想知道他们是否做了什么来阻止SQL注入.我很可能会在其中一个上面构建一个lib,而注入是我在选择一个时最关注的问题.有人知道吗?

Bre*_*ier 5

得到了OTL库的作者.在我调用它时,用"OTL方言"编写的参数化查询作为参数化查询传递给底层数据库API.因此参数化查询将像底层API一样注入安全.

进入这个其他SO张贴了完整的电子邮件解释: 是C++ OTL SQL数据库库使用遮光罩,或字符串连接在参数化查询?

编辑:SOCI使用soci::use表达式,这转换为通常的绑定机制,但具有更多的语法糖.例:db_session << "insert into table(column) values(:value_placeholder)", use(user_input,"value_placeholder");

就DTL而言,我不确定它对底层API的参数是做什么的.