星空网 > 软件开发 > ASP.net

参数化命令相关知识点之==================防止SQl的注入

一: 使用参数化命令查询DAL类: public DataTable StudentDAL(string name,string gender) { string str="连接字符串";//使用Using的稀少资源的释放using(sqlconnection con=new sqlconnection(str)) { string sql="select * from stdent where studentName=@name and Gender=@gender"; sqlcommand com=new sqlcommand(); sqlparameter[] par= { new sqlparameter=("@name",name), new sqlparameter=("@gender",gender); }; com.parameters.addRange(par); sqldataadapter da=new sqldataadapter(com); dataset dt=new dataset(); da.Fill(dt); return dt.Tables[0]; } } 

 

二:在C#中调用带输入参数的存储过程 --创建存储过程 create proc usp_selectStudent @studentName nvarchar(10) as select * froom student where StudentName=@studentNanme go DAL类 public DataTable GetStudentInFo(string name) { string str="连接字符串"; using(sqlconnection con=new sqlconnection(str)) { string sql="usp_selectStudent"; sqldataadapter da=new sqldataadapter(sql,con); sqlcommand com=da.selectcommand; //指定字符串为存储过程com.CommandType=CommandType.StoredProcedure; sqlparameter par=new sqlparameter=("@name",name); com.parameter.add(par); dataset dt=new dataset(); da.Fill(dt); return dt.Tables[0]; } }

三: 在C#中调用带输出参数的存储过程 --创建存储过程 create proc usp_selectstudentCount @name nvarchar(10) @Gender nvarchar(10) output as select @Gender=count(*) from student where studentName=@name; select * froom student where studentName=@name; go DAL类 public DataTable GetStudentCount(string name,string Gender) { string str="连接字符串"; using(sqlconnection con=new sqlconnection(str)) { string usp_selectstudentCount sqldataadapter da=new sqldataadapter(sql,con); sqlcommand com=da.selectCommand; com.CommandType=CommandType.StoredProcedure; sqlparameter [] pa= { new sqlparameter("@name",name), //设置为输出参数new sqlparameter("@Gender",sqlDbType.nvarchar,10) } //设置最后一个参数的输出 方向pa[pa.length-1].Direction=ParameterDiraction.OutPut; com.parameter.addRange(pa); string count=pa[pa.length-1].value.toString(); dataset dt=new dataset(); da.Fill(dt); return Table dt.Table[0]; } }

 补充一下Using的语法:

using (类型 对象名 = new 类型(参数列表)){  //……  //……}

 

参数化命令— SqlParameter

参数化命令相关知识点之==================防止SQl的注入

 

   




原标题:参数化命令相关知识点之==================防止SQl的注入

关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

tiktok黄色版:https://www.goluckyvip.com/tag/81364.html
外国tiktok:https://www.goluckyvip.com/tag/81365.html
tiktok破解版国内可用:https://www.goluckyvip.com/tag/81366.html
tiktok国际版下载破解版免费:https://www.goluckyvip.com/tag/81367.html
tiktok官网入口安卓:https://www.goluckyvip.com/tag/81368.html
国内tiktok网络怎么解决:https://www.goluckyvip.com/tag/81369.html
月活用户超20亿!万亿市值巨头对中国商家进一步开闸放流 :https://www.kjdsnews.com/a/1836412.html
九寨沟周围必去的景点推荐:https://www.vstour.cn/a/363190.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流