一般来说,在更新DataTable或是DataSet时,如果不采用SqlParameter,那么当输入的Sql语句出现歧义时,如字符串中含有单引号,程序就会发生错误,并且他人可以轻易地通过拼接Sql语句来进行注入攻击。
sqlhelper里:
AddRange方法
public static string connstr = ConfigurationManager.ConnectionStrings["sql"].ConnectionString;
//查询语句
public static DataTable ExcuteTable(string sql, params SqlParameter[] sqlParameters)
{
using (SqlDataAdapter sda = new SqlDataAdapter(sql, connstr))
{
if (sqlParameters != null && sqlParameters.Count() > 0)
sda.SelectCommand.Parameters.AddRange(sqlParameters);
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
return dt;
}
}
}
//增删改语句
public static int ExcuteNonQuery(string sql, params SqlParameter[] sqlParameters)
{
版权声明:本文为ay991120原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。