sql调用存储过程c#

sql调用存储过程c#

ID:34726245

大小:52.13 KB

页数:8页

时间:2019-03-10

sql调用存储过程c#_第1页
sql调用存储过程c#_第2页
sql调用存储过程c#_第3页
sql调用存储过程c#_第4页
sql调用存储过程c#_第5页
资源描述:

《sql调用存储过程c#》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、有多种方法使用ADO.NET调用存储过程并获得返回值和返回参数,其中包括:使用DataSet对象,在获得返回值和返回参数之外,还可以收集并使用返回的数据行。使用DataReader对象收集返回的行,遍历这些行,然后收集返回值和返回参数。使用ExecuteScalar方法返回结果中第一行的第一列的值以及返回值和返回参数。这对于聚合函数特别有用。使用ExecuteNonQuery方法只返回参数和值。任何返回的行都将被丢弃。这对于执行操作查询特别有用。本文演示后三种方法,并使用SqlCommand和OleDb

2、Command这两个对象。确保只复制对应于您在使用的托管提供程序的代码。如果您不确定应该使用哪个托管提供程序,请访问下面的MicrosoftDeveloperNetwork网站:.NET数据提供程序http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconadonetproviders.asp(http://msdn.microsoft.com/library/default.asp?url=/l

3、ibrary/en-us/cpguide/html/cpconadonetproviders.asp)在本文的每个示例中,这些参数都被添加到Command对象的Parameters集合中。使用SqlCommand对象时,您不必按照任何特定的顺序添加参数,但必须保证参数名正确。使用OleDbCommand对象时,必须按照正确的顺序添加参数,不能按照名称使用参数。回到顶端使用DataReader返回行和参数您可以使用DataReader对象返回只读的仅向前型数据流。DataReader中所包含的信息可以来自

4、一个存储过程。本示例使用DataReader对象运行带有输入和输出参数的存储过程,然后遍历返回记录,以查看返回参数。在运行MicrosoftSQLServer的服务器上创建下面的存储过程:CreateProcedureTestProcedure(@au_idINvarchar(11),@numTitlesOUTIntegerOUTPUT)ASselectA.au_fname,A.au_lname,T.titlefromauthorsasAjointitleauthorasTAonA.au_id=TA.a

5、u_idjointitlesasTonT.title_id=TA.title_idwhereA.au_id=@au_idINset@numTitlesOUT=@@Rowcountreturn(5)新建一个新的VisualC#.NETWindows应用程序项目。对System和System.Data命名空间使用using语句,这样,在后面的代码中就无需限定这些命名空间中的声明了。将此代码添加到“窗体”代码模块的顶部。请确保只复制对应于您所选的提供程序的代码。SQL客户端usingSystem.Data.S

6、qlClient;OLEDB数据提供程序usingSystem.Data.OleDb;用以下代码替换privateForm_Load事件中的代码:SQL客户端SqlConnectionPubsConn=newSqlConnection("DataSource=server;integrated"+"Security=sspi;initialcatalog=pubs;");SqlCommandtestCMD=newSqlCommand("TestProcedure",PubsConn);testCMD.C

7、ommandType=CommandType.StoredProcedure;SqlParameterRetVal=testCMD.Parameters.Add("RetVal",SqlDbType.Int);RetVal.Direction=ParameterDirection.ReturnValue;SqlParameterIdIn=testCMD.Parameters.Add("@au_idIN",SqlDbType.VarChar,11);IdIn.Direction=ParameterDire

8、ction.Input;SqlParameterNumTitles=testCMD.Parameters.Add("@numtitlesout",SqlDbType.VarChar,11);NumTitles.Direction=ParameterDirection.Output;IdIn.Value="213-46-8915";PubsConn.Open();SqlDataReadermyReader=testCMD.ExecuteRea

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。