猿问

SQL Server 参数化 SQL 查询 - 我还需要转义引号吗?

假设我有以下代码(删除无用的东西,如连接字符串、数据集创建、设置命令类型等)。


string sql = "SELECT * FROM SomeTable WHERE Field=@ParamValue";


using (SqlConnection conn = new SqlConnection())

using (SqlCommand cmd = new SqlCommand(sql, conn))

{

    cmd.Parameters.Add(new SqlParameter("ParamValue", someValue));

    da.Fill(ds);

}

使用参数化查询是否足以确保针对 SQL 注入的安全性,或者我是否需要someValue在将其作为参数传入之前首先去除引号?


神不在的星期二
浏览 210回答 1
1回答
随时随地看视频慕课网APP
我要回答