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 带参数的存储过程执行方法的更多相关文章

  1. ASP.NET代码调用SQL Server带DateTime类型参数的存储过程抛出异常问题

    ASP.NET代码调用SQL Server带DateTime类型参数的存储过程,如果DateTime类型参数的值是'0001/1/1 0:00:00'时,就会抛出异常“Message: SqlDate ...

  2. [转]SSIS OLE DB Source中执行带参数的存储过程

    本文转自:http://www.cnblogs.com/michaelxu/archive/2009/10/21/1587450.html 问题描述:执行一个存储过程得到一个多条记录的结果集,然后循环 ...

  3. SQL Server使用sp_executesql在存储过程中执行多个批处理

    SQL Server中有些SQL语句只能在一个批处理里面完成,例如CREATE SCHEMA语句创建SCHEMA的时候,每个SCHEMA都需要在一个单独的批处理里面完成: CREATE SCHEMA ...

  4. SQL Server中解决死锁的新方法介绍

    SQL Server中解决死锁的新方法介绍 数据库操作的死锁是不可避免的,本文并不打算讨论死锁如何产生,重点在于解决死锁,通过SQL Server 2005, 现在似乎有了一种新的解决办法. 将下面的 ...

  5. SQL Server带列名导出到Excel(Export to CSV with headers)的几个思路

    https://www.cnblogs.com/downmoon/archive/2012/05/04/2482995.html   SQL Server 2008中SQL应用系列及BI学习笔记系列- ...

  6. c#调用Mysql带参数的存储过程

    1.首先创建一个带参数的存储过程 ①存储过程名称=proc_bookinfo  ②存储过程2个参数 一个in 一个out in参数名称=ispay out参数名称=unPaycount ③ 这个存储过 ...

  7. sql server 常用的系统存储过程

      系统存储过程 说明 sp_databases 列出服务上的所有数据库 sp_helpdb 报告有关指定数据库或所有数据库的信息 sp_renamedb 更改数据库的名称 sp_tables 返回当 ...

  8. 在SQL Server中使用CLR调用.NET方法

    介绍    我们一起来做个示例,在.NET中新建一个类,并在这个类里新建一个方法,然后在SQL Server中调用这个方法.按照微软所述,通过宿主 Microsoft .NET Framework 2 ...

  9. SQL Server技术问题之存储过程与sql语句的优缺点

    优点: 1. 允许模块化程序设计.2.可维护性高,只需创建存储过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次.存储过程可独立于程序源代码而单独修改,而不需要更改.测试以及重新部署程序集 ...

随机推荐

  1. Netcat for Windows

    April 10, 2009 Netcat is a simple networking utility which reads and writes data across network conn ...

  2. cdev[典]

    linux-2.6.22/include/linux/cdev.hstruct cdev {   struct kobject kobj;          // 每个 cdev 都是一个 kobje ...

  3. sed找到重复的行

    sed之仅打印相邻重复的行 cat file  aaa bbb bbb ccc ddd eee eee fff   只显示重复的行: bbb bbb eee eee   sed -n ':a;N;/\ ...

  4. Android开发之MediaPlayer类

    官网关于MediaPlayer类的使用简介:

  5. poj 3087 Shuffle'm Up ( map 模拟 )

    题目:http://poj.org/problem?id=3087 题意:已知两堆牌s1和s2的初始状态, 其牌数均为c,按给定规则能将他们相互交叉组合成一堆牌s12,再将s12的最底下的c块牌归为s ...

  6. 【 D3.js 高级系列 — 5.1 】 颜色插值和线性渐变

    颜色插值指的是给出两个 RGB 颜色值,两个颜色之间的值通过插值函数计算得到.线性渐变是添加到 SVG 图形上的过滤器,只需给出两端的颜色值即可. 1. 颜色插值 在[高级 - 第 5.0 章]里已经 ...

  7. C#用DES加密JAVA用DES解密,JAVA用DES加密C#用DES解密的实现

    这里贴出来的是可通用的C#与jav的DES加密类,希望对大家管用直接复制即可用 C#DES加密解密类 ///<summary><![CDATA[加密解密帮助类]]></s ...

  8. static用法详解

    一. 面向过程程序设计 1.静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量.我们先举一个静态全局变量的例子,如下: //Example 1 #include & ...

  9. 《Python基础教程(第二版)》学习笔记 -> 第三章 使用字符串

    本章讲话介绍如何使用字符串格式化其他的值,并简单了解一下利用字符串的分割.联接.搜索等方法能做些什么. 基本字符串操作 所有标准的序列操作(索引.分片.乘法.判断成员资格.求长度.取最大最小值)对字符 ...

  10. 你知道C/S和B/S两种架构有什么区别吗?

    C/S和B/S,是再普通不过的两种软件架构方式,都可以进行同样的业务处理,甚至也可以用相同的方式实现共同的逻辑.既然如此,为何还要区分彼此呢?那我们就来看看二者的区别和联系. 一.C/S 架构     ...