VS中调用SQL SERVER存储过程
存储过程是经过编译的,永久保存在数据中的一组SQL语句,通过创建和使用存储过程能够提高程序的重用性和扩展性,为程序提供模块化的功能,还有利于对程序的维护和管理。以下就详谈一下,VB.NET怎样调用SQL
SERVER中的存储过程。
以上就是本人数据库中的一张表—OnDutyInfo
创建存储过程
<span style="font-size:18px;">create procedure pro_OnDutyInfo --存储过程名
@teacherID char(11) --參数名
as
select * from OnDutyInfo where teacherId <a target=_blank href="mailto:=@teacherID">=@teacherID</a> </span>
(该存储过程运行查询教师值班记录操作)
要实现的功能是,查询用户的值班记录,在VS中的实现代码
<span style="font-size:18px;"> Private Sub btnFind_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim strCon As String '连接数据库字符串
Dim cn As SqlConnection
Dim cmd As New SqlCommand
Dim pt As SqlParameter
Dim rdr As SqlDataReader
strCon = "initial catalog=ChargeSystem;user id=sa;password=123456"
cn = New SqlConnection(strCon) '实例化连接对象
cmd.Connection = cn
cmd.CommandText = "pro_OnDutyInfo" '存储过程名字
cmd.CommandType = CommandType.StoredProcedure '表明连接的类型为存储过程
pt = New SqlParameter("@teacherID", "11090241032") '获取參数
cmd.Parameters.Add(pt) '这是add方法,该方法仅仅能加入一个參数
cn.Open()
rdr = cmd.ExecuteReader '读取操作
If (rdr.Read) Then '通过数据流的形式来读取数据
MessageBox.Show(rdr(0).ToString)
End If End Sub</span>
以上操作就是一个简单的存储过程调用的操作,当然了大家可能会有问题,假设存储过程中的參数不止一个的话又该怎样操作呢?例如以下面的存储过程
我们看到当中会有非常多传入的參数,事实上非常easy,不用操心,仅仅需改一下加入的方法而已。
<span style="font-size:18px;">ALTER procedure [dbo].[pro_AddOffInfo]
@teacherId char(11), --职工号
@offTime time(0), --下机时间
@offDate date --下机日期
as
update OnDutyInfo set offTime=@offtime,offDate=@offdate where offtime is null and teacherid =@teacherId
--运行更新教师下机操作</span>
更改后的操作例如以下:
<span style="font-size:18px;">Dim paras As SqlParameter() = {New SqlParameter("@teacherId", En_OnDuty.teacherId), _
New SqlParameter("@offTime", En_OnDuty.offTime.ToString), _
New SqlParameter("@offDate", En_OnDuty.offDate.ToString)} '获取參数
cmd.Parameters.AddRange(paras) '注意这里换了一个方法</span>
以上就是实现VS调用SQL SERVER的小demo,也分析了ADD和ADDRanger的差别。
VS中调用SQL SERVER存储过程的更多相关文章
- Yii2.0调用sql server存储过程并获取返回值
1.首先展示创建sql server存储过程的语句,创建一个简单的存储过程,测试用. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE P ...
- qt调用sql server存储过程并获取output参数
最近新做的一个项目需要使用qt5连接另一台机器上的sql server,虽然网上已有类似文章,但还是有些其中很少提及的问题,故在这里汇总下: qt连接sql server可以参考这篇文章: <Q ...
- java 调用 sql server存储过程
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...
- Java的jdbc调用SQL Server存储过程Bug201906131119
SQL Server数据库存储过程,一个查询使用动态sql,另一个不使用动态sql,这种情况,jdbc可能获取不到实际查询数据,虽然数据库中执行没问题. 解决方法,都使用静态sql,或都使用动态sql ...
- PHP调用SQL Server存储过程
一.安装SQL Server Driver for PHP 在微软官网上发现了这个东西,他提供了一套PHP对MS2005/2008操作的全新函数库,并且支持UTF8,作为PHP的扩展运行.看来 ...
- Java调用SQL Server存储过程
1.调用普通存储过程(1)创建存储过程CREATE Procedure [dbo].[GetContactListByName] /*根据联系人姓名获取联系人信息*/@Name nvarchar(5 ...
- laravel调用sql server存储过程并取得ReturnValue
alter proc [dbo].[aaa]( @AgencyID int,--代理商ID @AdminID int --结算操作人ID(管理员ID))asbegin select ...
- Java的jdbc调用SQL Server存储过程Bug201906131120
如果要查询结果,第一行使用set nocount on;可能可以解决问题.
- C# 调用存储过程 Sql Server存储过程 存储过程报错,程序中的try
C#程序调用Sql Server存储过程,存储过程中报错情况,返回值... 0.SQL存储过程 USE [Opos] GO /****** Object: StoredProcedure [dbo]. ...
随机推荐
- ***PHP多线程pthreads 实现QQ号码爬虫
通过空间历史浏览,爬出查看你空间的人(一般限制20人,除非开通黄钻),然后在爬出这20人的浏览记录,依次向下爬,你可以控制爬行深度.这里仅仅给出怕中代码片段,你可以进一步优化,将QQ分类存储.通过QQ ...
- 练习--LINUX进程间通信之无名管道PIPE
IBM上放的这个系统不错,刚好可以系统回温一下LINUX的系统知识. http://www.ibm.com/developerworks/cn/linux/l-ipc/part1/ 感觉年纪大了,前几 ...
- redis info 各信息意义
redis_version:2.4.16 # Redis 的版本redis_git_sha1:00000000redis_git_dirty:0arch_bits:64multiplexing_api ...
- Android-相册效果(图片缩放 自由滑动)
先上图: 很多时候 我们会有这么一个需求: 展示一组图片 每个Item的图片 可以自由拉伸 滑动 焦点不冲突 网上有很多实现方法 通过自定义Gallery和ImageView来实现 个人不是很推荐 在 ...
- Toad for Oracle 12 download link
Toad for Oracle 12 download link x64-bit http://us-downloads.quest.com/Repository/support.quest.com/ ...
- hdu4722Good Numbers(dp)
链接 这题规律其实挺明显的 打表找规律估计都可以 正规点就是DP 算出第N位所包含的good number的数量 如果给出的数是N+1位 就枚举各位上比原来小的数 加上下一位的dp值 一个i写成g了 ...
- c#执行Dos命令
一个执行Dos命令的窗口程序,与各位分享. 效果图: 具体实现在代码中有详细的注释,请看代码. 实现执行CMD命令的核心代码(Cmd.cs): [csharp] using S ...
- apache开源项目--kafka
kafka是一种高吞吐量的分布式发布订阅消息系统,她有如下特性: 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能. 高吞吐量:即使是非常普通的 ...
- GitHub常用 库
来自: http://www.jianshu.com/p/6475c90e8b4d 网络请求库 https://github.com/AFNetworking/AFNetworking https:/ ...
- [Andrew]Grid列编辑实现
Html.X().GridPanel() .Plugins(Html.X().CellEditing()) .Listeners(l =&g ...