Sql Server 带参数的存储过程执行方法
Sql Server 带参数的存储过程执行方法
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要了解更多情况可查看本人网站的相关内容。
Sql Server 带参数的存储过程执行方法的更多相关文章
- ASP.NET代码调用SQL Server带DateTime类型参数的存储过程抛出异常问题
ASP.NET代码调用SQL Server带DateTime类型参数的存储过程,如果DateTime类型参数的值是'0001/1/1 0:00:00'时,就会抛出异常“Message: SqlDate ...
- [转]SSIS OLE DB Source中执行带参数的存储过程
本文转自:http://www.cnblogs.com/michaelxu/archive/2009/10/21/1587450.html 问题描述:执行一个存储过程得到一个多条记录的结果集,然后循环 ...
- SQL Server使用sp_executesql在存储过程中执行多个批处理
SQL Server中有些SQL语句只能在一个批处理里面完成,例如CREATE SCHEMA语句创建SCHEMA的时候,每个SCHEMA都需要在一个单独的批处理里面完成: CREATE SCHEMA ...
- SQL Server中解决死锁的新方法介绍
SQL Server中解决死锁的新方法介绍 数据库操作的死锁是不可避免的,本文并不打算讨论死锁如何产生,重点在于解决死锁,通过SQL Server 2005, 现在似乎有了一种新的解决办法. 将下面的 ...
- SQL Server带列名导出到Excel(Export to CSV with headers)的几个思路
https://www.cnblogs.com/downmoon/archive/2012/05/04/2482995.html SQL Server 2008中SQL应用系列及BI学习笔记系列- ...
- c#调用Mysql带参数的存储过程
1.首先创建一个带参数的存储过程 ①存储过程名称=proc_bookinfo ②存储过程2个参数 一个in 一个out in参数名称=ispay out参数名称=unPaycount ③ 这个存储过 ...
- sql server 常用的系统存储过程
系统存储过程 说明 sp_databases 列出服务上的所有数据库 sp_helpdb 报告有关指定数据库或所有数据库的信息 sp_renamedb 更改数据库的名称 sp_tables 返回当 ...
- 在SQL Server中使用CLR调用.NET方法
介绍 我们一起来做个示例,在.NET中新建一个类,并在这个类里新建一个方法,然后在SQL Server中调用这个方法.按照微软所述,通过宿主 Microsoft .NET Framework 2 ...
- SQL Server技术问题之存储过程与sql语句的优缺点
优点: 1. 允许模块化程序设计.2.可维护性高,只需创建存储过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次.存储过程可独立于程序源代码而单独修改,而不需要更改.测试以及重新部署程序集 ...
随机推荐
- cache设计,以及多核造成的不一致性以及解决方案
http://www.360doc.com/content/11/1013/00/1317564_155625188.shtml http://blog.csdn.net/muxiqingyang/a ...
- ios 应用剖析
在创建HelloWorld的过程中,生成了很多文件(展开Xcode左边的项目导航视图可以看到,如图2-8所示),它们各自的作用是什么?彼此间又是怎样的一种关系呢? 图2-8 项目导航视图 如图2-8所 ...
- GB2312 简体中文编码表
GB 2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号.这种表示方式也称为区位码. 01-09区为特殊符号. 16-55区为一级汉字,按拼音排序. 56-87区为二级汉字,按部首/笔画 ...
- Invoke BeginInvoke
http://www.codeproject.com/Articles/10311/What-s-up-with-BeginInvoke http://www.codeproject.com/Arti ...
- bash把所有屏幕输出重定向到文件并保持屏幕输出的方法
输出到文件log中,并在屏幕上显示:#ls >&1 | tee log 追加输出到文件log中,并在屏幕上显示:#ls >&1 | tee -a log
- bash 正则表达式匹配,一行文本中 “包含 ABC” 并且 “不包含 XYZ”
bash 正则表达式匹配,一行文本中 “包含 ABC” 并且 “不包含 XYZ” A文件: XXXX ABC XXX4444444444444444XXXX ABC XXX XYZ6666666 ...
- annotatedClasses和component-scan冲突吗
annotatedClasses:配置在sessionFactory下面表示的是,哪些实体需要映射,代码如下: <bean id="sessionFactory" class ...
- 【App FrameWork】框架的页面布局
之前主要用JqueryMobile+PhoneGap的模式开发移动应用,但JQueryMobile自身存在的硬伤太多,如加载速度缓慢,页面转场白屏.闪烁,头尾部导航浮动问题,页面滚动等等,用户体验效果 ...
- Today I Cooked the Sun Yat-Sen University [2007-09-25 12:37:39]
Aha,yes,it is! And I paticipate in the school page of sysu...and cann't change my previous csu to sy ...
- jvm常量池 vsv为什么1000 == 1000返回为False,而100 == 100会返回为True?
在jvm规范中,每个类型都有自己的常量池.常量池是某类型所用常量的一个有序集合,包括直接常量(基本类型,String)和对其他类型.字段.方法的符号引用.之所以是符号引用而不是像c语言那样,编译时直接 ...