【IT168技术文档】
这一篇我们介绍带参数的存储过程执行方法,它调用通用数据访问类(SqlHelper)执行 SqlHelper.ExecuteNonQuery()方法,使用示例为;
SqlHelper.ExecuteNonQuery(conn, CommandType.StoredProcedure, sqlexec, myparm);
其中传递的4个参数:
“conn”—为链接字符;
“ CommandType.StoredProcedure”—表示要执行的SQL存储过程类型;
“sqlexec”—要执行的SQL存储过程;
“myparm”—为传递的参数。它需要参数的初始化、赋予参数名称、设定类型和长度、取得其值等。
当ExecuteNonQuery()执行 select,结果总是返回-1,ExecuteNonQuery()对于 Update、Insert 和 Delete 语句,返回值为该命令所影响的行数。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); } }