您的位置:首页 > 数据库

Sql Server 带参数的存储过程执行方法

2008-05-22 12:38 295 查看
Visual C# 动态操作 SQL Server 数据库实例教程(4):带参数的存储过程执行方法

上一篇文章介绍了带参数的SQL语句执行方法不带参数的存储过程执行方法,这一篇我们介绍带参数的存储过程执行方法,它调用通用数据访问类(SqlHelper)执行 SqlHelper.ExecuteNonQuery()方法,使用示例为;

SqlHelper.ExecuteNonQuery(conn, CommandType.StoredProcedure, sqlexec, myparm);

其中传递的4个参数:

“conn”—为链接字符;

“ CommandType.StoredProcedure”—表示要执行的SQL存储过程类型;

“sqlexec”—要执行的SQL存储过程;

“myparm”—为传递的参数。它需要参数的初始化、赋予参数名称、设定类型和长度、取得其值等。

protected void btnExecuteProcParm_Click(object sender, EventArgs e)

{

//初始化参数

SqlParameter myparm = new SqlParameter();

//获取参数的名称

myparm.ParameterName = "title";

//设置变量的类型和长度

myparm.SqlDbType = SqlDbType.VarChar; //这里是不是要使用本系统数据库中的数据类型VarChar?

myparm.Size = 100; //视数据表中的定义情况而定

//获取参数的值

myparm.Value = "ExecuteNonQuery";

//获取要执行的存储过程

string sqlexec = "sp_getGISnews";

SqlCommand cmd = new SqlCommand();

//定义对象资源保存的范围,一但using范围结束,将释放对方所占的资源

using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))

{

//打开连接

conn.Open();

//调用执行方法

SqlHelper.ExecuteNonQuery(conn, CommandType.StoredProcedure, sqlexec, myparm);

}

}

当ExecuteNonQuery()执行 select,结果总是返回-1,ExecuteNonQuery()对于 Update、Insert 和 Delete 语句,返回值为该命令所影响的行数。对于其他所有类型的语句,返回值为 -1要了解更多情况可查看本人网站的相关内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: