在C#中安全地生成SQL查询

前端之家收集整理的这篇文章主要介绍了在C#中安全地生成SQL查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在C#中生成SQL查询的最安全的方法是什么,包括清理用户输入,以免注入?我正在寻找一个不需要外部库的简单解决方案.

解决方法

使用sql参数:

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparameter(v=vs.80).aspx

这是C#中的一个例子

sqlCommand tCommand = new sqlCommand();
tCommand.Connection = new sqlConnection("YourConnectionString");
tCommand.CommandText = "UPDATE players SET name = @name,score = @score,active = @active WHERE jerseyNum = @jerseyNum";

tCommand.Parameters.Add(new sqlParameter("@name",System.Data.sqlDbType.VarChar).Value = "Smith,Steve");
tCommand.Parameters.Add(new sqlParameter("@score",System.Data.sqlDbType.Int).Value = "42");
tCommand.Parameters.Add(new sqlParameter("@active",System.Data.sqlDbType.Bit).Value = true);
tCommand.Parameters.Add(new sqlParameter("@jerseyNum",System.Data.sqlDbType.Int).Value = "99");

tCommand.ExecuteNonQuery();

猜你在找的C#相关文章