Oracle 参数是否阻止 SQL 注入?

Is Oracle do parameters prevent SQL injection?

提问人:yu yang Jian 提问时间:5/22/2020 最后编辑:marc_syu yang Jian 更新时间:5/22/2020 访问量:816

问:

在 SQL Server 中,我知道参数可以从这个答案中详细原因阻止 SQL 注入,并且 Oracle 是否同样可以使用参数来阻止 SQL 注入?

这是我的 C# 代码:

OracleCommand command = new OracleCommand(querySql);
command.Parameters.Add(new OracleParameter("Column1", OracleDbType.Varchar2, 3, "Value1", ParameterDirection.Input));
command.Parameters.Add(new OracleParameter("Column1", OracleDbType.Varchar2, 6, "Value1", ParameterDirection.Input));
cmd.ExecuteReader();
.NET Oracle SQL 注入

评论

1赞 marc_s 5/22/2020
是的,对于任何使用 SQL 作为查询语言的数据库系统来说,SQL 注入都是一个普遍问题 - 它不是特定于 SQL Server 的......而使用参数化查询的解决方案通常也是避免SQL注入的最佳公认做法
0赞 yu yang Jian 5/22/2020
好吧,如果有 Oracle Master 可以解释 Oracle 中的工作细节,读者会很感激。