快速简单的ADO.NETsqlserver存储过程调用

ADO.NET有很多值得学习的地方,这里我们主要介绍ADO.NET,包括介绍ADO.NET sql server存储过程等方面。Disconnected类为ADO.NET框架提供了基本结构。这个类的一个示例是DataTable类,该类的对象可以在不依赖某个数据提供程序的情况下存储数据。Shared类构成了数据提供程序的基类,由所有的数据提供程序共享。DataProviders类可以处理不同类型的数据源,他们用于在特定的数据库上执行所有的数据管理操作。例如,SqlClient数据提供程序只能处理SQLServer数据库。

目前创新互联建站已为千余家的企业提供了网站建设、域名、网络空间、网站运营、企业网站设计、璧山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

数据库提供程序包含Connection、Command、DataAdapter和DataReader对象。在一般的ADO.NET编程中,首先要创建Connection对象,给它提供需要的信息,例如连接字符串。然后创建一个Command对象,给它提供要执行的SQL命令的细节。这个命令可以是内置的SQL文本命令、存储过程或对表的直接访问。如果需要,还可以为这些命令提供参数。

#T#创建Connection和Command对象后,就必须确定命令是否返回结果集。如果命令不返回结果集,就可以通过调用几个Execute方法之一,执行命令。另一方面,如果命令返回结果集,就必须确定是否要保留结果集,以备将来在不维持与数据库的连接的情况下使用。如果要保留结果集,就必须创建一个DataAdapter对象,用它填充DataSet或DataTable对象。这些对象可以在断开连接的模式下维护其中的信息。但是,如果不想保留结果集,只是要以快速方式执行命令,就可以使用Command对象创建DataReader对象。DataReader对象需要与数据库的实时连接,它是一个只向前的只读光标。

在ADO.NET sql server里面建立一个存储过程,如下所示

 
 
  1. CREATEPROCEDURE[dbo].[UserProcedureWithParameter]
  2. @usernamenvarchar(50)
  3. AS
  4. select*from[user]whereusernamelike@username
  5. GO

在ADO.NET sql server里面这样的调用

 
 
  1. privatevoidPage_Load(objectsender,System.EventArgse)
  2. {
  3. SqlConnectioncon=newSqlConnection();
  4. con.ConnectionString="workstationid=OVERMIND;packetsize=4096;userid=sa;password=sa;datasource=OVERMIND;
    persistsecurityinfo=False;initialcatalog=wztj";
  5. con.Open();
  6. SqlCommandcm=newSqlCommand("UserProcedureWithParameter",con);
  7. cm.CommandType=CommandType.StoredProcedure;
  8. SqlParameterparameter1=newSqlParameter("@username",SqlDbType.NVarChar,50);
  9. parameter1.Value="%"+"aa"+"%";
  10. cm.Parameters.Add(parameter1);
  11. DataSetds=newDataSet();
  12. SqlDataAdapterad=newSqlDataAdapter(cm);
  13. ad.Fill(ds,"user");
  14. DataGrid1.DataSource=ds;
  15. DataGrid1.DataBind();
  16. //Putusercodetoinitializethepagehere
  17. }

分享题目:快速简单的ADO.NETsqlserver存储过程调用
链接URL:http://www.shufengxianlan.com/qtweb/news6/511156.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联