`
leonardleonard
  • 浏览: 775517 次
社区版块
存档分类
最新评论

C#调用存储过程简单完整例子

阅读更多
CREATE PROC P_TEST
@Name VARCHAR(20),
@Rowcount INT OUTPUT
AS
BEGIN
 SELECT * FROM T_Customer WHERE NAME=@Name
 SET  @Rowcount=@@ROWCOUNT
END
GO
----------------------------------------------------------------------------------------
--存储过程调用如下:
----------------------------------------------------------------------------------------
DECLARE @i INT
EXEC P_TEST 'A',@i OUTPUT
SELECT @i
--结果
/*
Name       Address    Tel                 
---------- ---------- --------------------
A          Address    Telphone

(所影响的行数为 1 行)

           
-----------
1

(所影响的行数为 1 行)
*/
----------------------------------------------------------------------------------------
--DotNet 部分(C#)
--WebConfig 文件:
----------------------------------------------------------------------------------------
......
 </system.web>
 
   <!-- 数据库连接字符串
   -->
 <appSettings>
      <add key="ConnectString" value="server=(local);User ID=sa;Password=;database=Test" />
</appSettings>
  
</configuration>
----------------------------------------------------------------------------------------
--C#代码:(用到两个测试控件,DataGrid1(用于显示绑定结果集合),Lable(用于显示存储过程返回单值)
----------------------------------------------------------------------------------------
//添加数据库引用
using System.Data.SqlClient;
......
 private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   String DBConnStr;
   DataSet MyDataSet=new DataSet();
   System.Data.SqlClient.SqlDataAdapter DataAdapter=new System.Data.SqlClient.SqlDataAdapter();
   DBConnStr=System.Configuration.ConfigurationSettings.AppSettings["ConnectString"];
   System.Data.SqlClient.SqlConnection myConnection = new System.Data.SqlClient.SqlConnection(DBConnStr);
   if (myConnection.State!=ConnectionState.Open)
   {
    myConnection.Open();
   }  
   System.Data.SqlClient.SqlCommand myCommand = new System.Data.SqlClient.SqlCommand("P_Test",myConnection);
   myCommand.CommandType=CommandType.StoredProcedure;
   //添加输入查询参数、赋予值
   myCommand.Parameters.Add("@Name",SqlDbType.VarChar);
   myCommand.Parameters["@Name"].Value ="A";

   //添加输出参数
   myCommand.Parameters.Add("@Rowcount",SqlDbType.Int);
   myCommand.Parameters["@Rowcount"].Direction=ParameterDirection.Output;


   myCommand.ExecuteNonQuery();
   DataAdapter.SelectCommand = myCommand;

   if (MyDataSet!=null)
   {
     DataAdapter.Fill(MyDataSet,"table");
   }
   
   DataGrid1.DataSource=MyDataSet;
   DataGrid1.DataBind();
   //得到存储过程输出参数
   Label1.Text=myCommand.Parameters["@Rowcount"].Value.ToString();

   if (myConnection.State == ConnectionState.Open)
   {
    myConnection.Close();
   }

  }
----------------------------------------------------------------------------------------
运行以上代码即可(返回记录集合和存储过程返回值)

 
分享到:
评论

相关推荐

    c#调用存储过程例子

    c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子c#调用存储过程例子

    C#调用存储过程

    C#调用存储过程的简单完整例子,内含丰富的源代码,经本人测试完成的

    C#调用存储过程详解(带返回值、参数输入输出等)

    主要介绍了C#调用存储过程的方法,结合实例形式详细分析了各种常用的存储过程调用方法,包括带返回值、参数输入输出等,需要的朋友可以参考下

    C#连接sql server 2005的存储过程例子大全.rar

    c# sql存储过程 c#连接sqlserver存储过程 asp.net连接sql存储过程 存储过程原码 存储过程知识点 c#连接sql server的存储过程各种例子

    C#调用数据库(界面形式,图表显示结果)

    C#调用数据库,主要是实现一些数据查询、插入、删除功能(以界面与图表显示结果),数据库里有完整性约束、存储过程等.(注:代码忘加注释了...请酌情下载)

    C#.net_经典编程例子400个

    273 实例190 获取窗口文本 273 实例191 判断文件是否正在被使用 274 实例192 在程序中调用.HLP文件 275 实例193 C#中实现文件拖放 276 实例194 文件比较 276 第7章 操作系统与Windows...

    调用LBS百度云 Demo(C#)

    包含一个LBS云存储调用例子(.Net 4.0、VS2012) 和两个文档《百度地图LBS云存储APIv2 0接口说明文档.pdf》、《百度地图LBS云检索APIv2 0接口说明文档.pdf》 首先去申请一个百度云的AK,替换掉LBSDataHelper中的AK密钥...

    c#数据库.docx

    包括事务、查询、拼接查询与C#综合应用例子,动态拼接,存储过程的调用,查询分页

    SliverLight跨页面传值并调用WCF的例子

    SliverLight跨页面传值并调用WCF的例子,分多窗口协同工作,对象存储,DataGrid显示

    C#微软培训资料

    18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...

    mssql 存储过程调用C#编写的DLL文件

    网上很有多类似的文章,但描述不完整,在某些关键的地方,少了相应的补充,以至于那些例子都无法测试通过。 我把其中的一种思路整理出来: 1. 准备DLL文件 首先,你需要新建一个类库工程,工程名没有要求,随意取为...

    C#5.0本质论第四版(因文件较大传的是百度网盘地址)

    C#5.0本质论第四版,高清扫描的,对C#5.0技术讲的比较详细,第1章 C#概述 1 1.1 Hello,World 1 1.2 C#语法基础 3 1.2.1 C#关键字 3 1.2.2 标识符 4 1.2.3 类型定义 5 1.2.4 Main 6 1.2.5...

    sqlsharpener:解析SQL文件以创建一个元对象层次结构,您可以使用该层次结构生成C#代码,例如存储过程包装

    SqlSharpener通过解析SQL文件以创建一个元对象层次结构来实现此目的,通过该元对象层次结构可以生成C#代码,例如存储过程包装程序或Entity Framework Code-First实体。 您可以手动执行此操作,也可以通过调用其中...

    c#学习笔记.txt

    但是当他们看完C#的文档后又开始高兴起来,因为C#是如此简单:事实上,简单正是C#最大的特点。除此之外,它还具有现代、面向对象、类型安全、版本控制、兼容、灵活等特点。详细介绍请参阅rainbow(一个长着胡子的...

    中文验证码的C#源码例子

    实现过程相关要点:获取GB2312编码页(表) ,调用函数产生4个随机中文汉字编码,根据汉字编码的字节数组解码出验证码中文汉字,生成随机生成器,清空图片背景色,画图片的背景噪音线,画图片的前景噪音点,画图片的...

    在一小时内学会 C#(txt版本)

    使用例程,简单却完整的探索 C# 语言的构造和特点。本文特别适合有 C++ 基础却没有太多精力学习 C# 的读者。 关于作者 Aisha Ikram 我现在在英国一家软件公司任技术带头人。我是计算机科学的硕士。我主要使用 ...

    明日科技《C#示例源代码》(5-8)

    C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...

    明日科技《C#示例源代码》(9-12)

    C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...

Global site tag (gtag.js) - Google Analytics