All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
ASP.NET构架与安全机制之Http请求处理_.net资料_编程技术
LINQ体验(16)——LINQ,to,SQL语句之DataContext_[Asp.Net教程]
php 站点使用XML文件做配置类_[PHP教程]
asp.net2.0内置Application对象的方法
深入了解PHP服务器参数$_SERVER的使用_[PHP教程]
mssql安装提示已经安装信息,修改注册表_mssql学习_编程技术
ASP.NET通过Remoting,service上传文件_[Asp.Net教程]
sql年月日计算方法_[SQL Server教程]
XML入门教程-验证XML是合法的XML_[XML教程]
利用UrlRewrite,asp.net动态生成htm页面(补充说明)_[Asp.Net教程]
Reading number is top 10 pictures
美女和狗狗1
八个盛产美女的国家2
BingBingFan apple dew point photo gallery3
Sora aoi in China2
Plump, too plump!2
LiXiang early youth photo
Beauty ZhiHuiLin2
Go to the national museum3
A man's favorite things7
In 2013 hercules Arnold classic2
Download software ranking
少妇苏霞全本
Wild things 2
Tram sex maniac 2 (H) rar bag18
金山office2007
Ashlynn Video1
美女写真2
Sora aoi, the nurse, uniform ,nursing assistant
Tram sex maniac 2 (H) rar bag10
Such love down(擒爱记)
XML+Web+Service开发教程
qq published in(发表于) 2014/7/11 9:29:40 Edit(编辑)
在C#中调用存储过程

在C#中调用存储过程

在C#中调用存储过程

在C# 中调用存储过程

调用存储过程时主要会涉及两种状况:一种是执行而不需要返回值,如删除和修改等;另一种是执行并且要求有返回值,如查询。在C#中调用存储过程时主要会用到两个类,SqlCommand和SqlDataAdapter,SqlCommand类的CommandType属性可以获取或设置要对数据源执行的Transact-SQL语句或存储过程。当SqlCommand与存储过程关联起来之后就可以通过SqlCommand类来执行。另一种执行方法则是通过SqlDataAdapter类的Fill方法,SqlDataAdapter类的Fill方法不仅会执行存储过程同时会将结果放入结果集中。

示例

C# 中调用存储过程

首先创建一个用于添加信息的存储过程(Proc_InsertOfPelple)与一个用于查找信息的存储过程(Proc_SelectOfPelple)。然后定义一个数据操作类(ClsDBProcControl)用于实现对表(t_People)的各种操作,ClsDBProcControl类中包括ConDB方法、Insert_Proc方法、select_Proc方法以及t_People表对应的实体类,在程序运行时,当用户单击【添加信息】按钮时,将把姓名和性别信息赋值给t_People表的属性,然后通过调用Insert_Proc方法向数据表中插入新信息,当单击【查询信息】按钮时,把姓名和性别信息赋值给t_People表的属性,然后通过调用select_Proc方法查询指定信息。示例运行结果如图1和图2所示网站源代码



图1 插入信息窗体



图2 查询信息窗体

单击【添加信息】按钮时,首先将姓名、性别信息赋值给属性str_Name与属性str_Sex,然后再调用Insert_Proc方法实现插入信息功能。代码如下:

private void button1_Click(object sender, EventArgs e)

{

ClsDB.ClsDBProcControl CBDP = new OptDB.ClsDB.ClsDBProcControl();

CBDP.str_Name = this.textBox2.Text.Trim().ToString();

CBDP.str_Sex = this.textBox3.Text.Trim().ToString();

if (CBDP.Insert_Proc(CBDP))

{

MessageBox.Show("插入成功");

CBDP.str_Name =string.Empty;

CBDP.str_Sex = string.Empty;

this.dataGridView1.DataSource = CBDP.select_Proc(CBDP).Tables[0].DefaultView;

}

}

单击【查询信息】按钮,首先将姓名、性别信息赋给属性str_Name与str_Sex,然后再调用select_Proc方法,select_Proc方法将返回一个DataSet对象用于将结果显示给用户。代码如下:

private void button2_Click(object sender, EventArgs e)

{//本教程来自:http://www.isstudy.com

ClsDB.ClsDBProcControl CBDP = new OptDB.ClsDB.ClsDBProcControl();

CBDP.str_Name = this.textBox2.Text.Trim().ToString();

CBDP.str_Sex = this.textBox3.Text.Trim().ToString();

this.dataGridView1.DataSource = CBDP.select_Proc(CBDP).Tables[0].DefaultView;

}

t_People表对应实体,主要通过GET,SET访问器定义属性str_Name与str_Sex。代码如下:

#region//表对应的实体

private string strName;

public string str_Name

{

get

{

return this.strName;

}

set

{

strName = value;

}

}

private string strSex;

public string str_Sex

{

get

{

return this.strSex;

}

set

{

strSex = value;

}

}

#endregion

ConDB方法用来生成链接对象,代码如下:

#region//生成链接对象

public SqlConnection ConDB()

{

con = new SqlConnection("server=.;uid=sa;pwd=;database=DB_ADONET");

if (con.State == ConnectionState.Closed)

{//本教程来自:http://www.isstudy.com

con.Open();

}

return con;

}

#endregion

Insert_Proc方法首先获取属性值(str_Name与str_Sex),然后将值传给存储过程(Proc_ InsertOfPelple),最后利用SqlCommand对象的ExecuteNonQuery方法执行存储过程(Proc_Insert OfPelple)完成信息添加功能。网站源代码代码如下:

public bool Insert_Proc(ClsDBProcControl CDB)

{

using(cmd = new SqlCommand())

{

try

{

cmd.CommandText = "Proc_InsertOfPelple";

cmd.Connection = ConDB();

cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add("@tb_PName", SqlDbType.VarChar);

cmd.Parameters["@tb_PName"].Value = CDB.str_Name;

cmd.Parameters.Add("@tb_PSex", SqlDbType.VarChar).Value =

CDB.str_Sex;

cmd.ExecuteNonQuery();

return True;

}

catch

{

return False;

}

finally

{

if (con.State == ConnectionState.Open)



添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.