一: 使用参数化命令查询
DAL类:
public DataTable StudentDAL(string name,string gender)
{
string str="连接字符串";
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];
}
}

最新文章

  1. Mysql的Haproxy反向代理和负载均衡
  2. 无废话SharePoint入门教程一[SharePoint概述]
  3. 【英语】Bingo口语笔记(21) - 表达“请客吃饭”
  4. Netbeans IDE配置
  5. HDU 2553 n皇后问题(回溯法)
  6. Wowza流媒体Live直播和VOD点播配置实战
  7. unity还原three导出的json——基本模型,位移,旋转,缩放
  8. 浅析前端开发中的 MVC/MVP/MVVM 模式
  9. Servlet交互【重定向 与 请求分派】详解
  10. python 3.6 MJ小工具
  11. 错误 frm-40654 记录已经被另一个用户更新,重新查询以查看修改
  12. 理解ClassLoader
  13. 20164322 韩玉婷-----Exp6 信息搜索与漏洞扫描
  14. Python之面向对象的组合、多态、菱形问题、子类中重用父类的两种方式
  15. margin 负边距应用
  16. 随笔记:如何使用Python连接(/操作)Oracle数据库(Windows平台下)
  17. CVE-2015-1642 POC
  18. yii2-admin扩展自定义目录
  19. Oracle VM VirtualBox 安装XP、Win 7
  20. Linux学习笔记 (七)挂载命令

热门文章

  1. js数据类型判断和数组判断
  2. 【译】在 Chrome 开发者工具中调试 node.js
  3. Django 源码小剖: URL 调度器(URL dispatcher)
  4. 【jquery】Validform,一款不错的 jquery 表单验证插件
  5. Kafka - SQL 代码实现
  6. PowerShell实现文件下载(类wget)
  7. PHP读写文件高并发处理实例-转
  8. JS - Cookie: getCookie, setCookie
  9. [z] 人工智能和图形学、图像处理方面的各种会议的评级
  10. IT项目经理成长手记