sean168

 

SqlCommand 执行存储过程

1.添加一个新的SqlCommand对象,该对象能作为SqlDataAdapter对象的

UpdateCommand属性被使用:
private SqlCommand cmdUpdPubs;
2.更新该类的构造函数Publishers()函数,添加以下内容:
// 创建另一个SqlCommand对象,该对象引用更新发行商名称的存储过程
cmdUpdPubs = new SqlCommand();
cmdUpdPubs.Connection = cnPubs;
cmdUpdPubs.CommandType = CommandType.StoredProcedure;
cmdUpdPubs.CommandText = "up_UpdatePublisherName";//存储过程名称
// 为上面的SqlCommand对象添加必要的参数
cmdUpdPubs.Parameters.Add( "@pub_id", SqlDbType.Char, 4, "pub_id" );
cmdUpdPubs.Parameters.Add( "@pub_name", SqlDbType.VarChar, 40,

"pub_name" );
SqlParameter updParam = new SqlParameter
( "@Original_pub_name", SqlDbType.VarChar, 40, "pub_name" );
updParam.SourceVersion = DataRowVersion.Original;
cmdUpdPubs.Parameters.Add( updParam );
3.指定SqlDataAdapter对象的UpdateCommand属性为上面定义的SqlCommand对象


daPubs.UpdateCommand = cmdUpdPubs;
4.添加方法UpdatePublisherName():
public void UpdatePublisherName( DataSet dsChanges )
{
// 更新所有改动
daPubs.Update( dsChanges );
}
---------------------------------------------------------------------------------

3.在该类的构造函数中完成连接后台数据库,获取SqlDataAdapter对象等业务

逻辑:

public Publishers()
{
try
{
// 创建一个数据库连接对象
cnPubs = new SqlConnection( "server=localhost;integrated

security=true;database=pubs" );
// 创建一个SqlCommand对象,并指明其命令类型为存储过程
cmdPubs = new SqlCommand();
cmdPubs.Connection = cnPubs;
cmdPubs.CommandType = CommandType.StoredProcedure;
cmdPubs.CommandText = "up_GetPublisherInfo";
// 创建一个SqlDataAdapter对象,设定其SelectCommand属性为上面的

SqlCommand对象
daPubs = new SqlDataAdapter();
daPubs.SelectCommand = cmdPubs;
// 创建一个DataSet对象
dsPubs = new DataSet();
}
catch( Exception ) {}
}

posted on 2006-06-29 09:15  sean168  阅读(2831)  评论(2)    收藏  举报

导航