热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在VB.NET中如何调用SQLServer存储过程

定义数据链接部分省略,myConn为链接对象ProcName为存储过程名1.调用存储过程,但无返回值PrivateFunctionSqlProc1(By
定义数据链接部分省略, myConn为链接对象 ProcName为存储过程名


1.调用存储过程,但无返回值

Private Function SqlProc1(ByVal ProcName As String) As Boolean

'定义数据链接部分省略, myConn为链接对象 ProcName为存储过程名

Dim myCommand As New SqlClient.SqlCommand(ProcName, myConn)

With myCommand

.CommandType = CommandType.StoredProcedure

.Parameters.Add("@CodeType", SqlDbType.VarChar, 20).Value = "年级编码"

Try

.ExecuteNonQuery()

Return True

Catch ex As Exception

Return False

End Try

End Function


2.调用存储过程,返回普通值

Private Function SqlProc1(ByVal ProcName As String) As String

'定义数据链接部分省略, myConn为链接对象

Dim myCommand As New SqlClient.SqlCommand(ProcName, myConn)

With myCommand

.CommandType = CommandType.StoredProcedure

.Parameters.Add("@CodeType", SqlDbType.VarChar, 20).Value = "年级编码"

.Parameters.Add("@NewCode", SqlDbType.VarChar, 20).Direction = ParameterDirection.Output

Try

.ExecuteNonQuery()

Return .Parameters(1).Value()

Catch ex As Exception

Return "无编码生成"

End Try

End Function


3.调用存储过程,返回数据集

'VB.NET代码

Private Function SqlProc2(ByVal ProcName As String, ByVal Param1 As String) As DataSet

'定义命令对象,并使用储存过程

Dim myCommand As New SqlClient.SqlCommand

myCommand.CommandType = CommandType.StoredProcedure

myCommand.CommandText = ProcName

myCommand.Connection = myConn

'定义一个数据适配器,并设置参数

Dim myDapter As New SqlClient.SqlDataAdapter(myCommand)

myDapter.SelectCommand.Parameters.Add("@name", SqlDbType.VarChar, 20).Value = Param1

'定义一个数据集对象,并填充数据集

Dim myDataSet As New DataSet

Try

myDapter.Fill(myDataSet)

Catch ex As Exception

End Try

Return myDataSet

End Function


'存储过程代码

Create Proc Test @name varchar(20)As

Select * From EC_Grade where cGradeName=@name

GO

***如果将存储过程修改部分内容,可以做为查询使用


CREATEProc Test
@name varchar(200)=''
--此处应该注意200为查询条件的长度,可以根据实际情况而定;但不建议用于过长的查询条件
As
Declare @sql1 varchar(8000)
if &#64;name<>&#39;&#39;
Select &#64;sql1&#61;&#39;Select * From EC_Grade where &#39;&#43; &#64;name
else
Select &#64;sql1&#61;&#39;Select * From EC_Grade&#39;
exec(&#64;sql1)
GO



推荐阅读
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 在使用 DataGridView 时,如果在当前单元格中输入内容但光标未移开,点击保存按钮后,输入的内容可能无法保存。只有当光标离开单元格后,才能成功保存数据。本文将探讨如何通过调用 DataGridView 的内置方法解决此问题。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • SQLite 动态创建多个表的需求在网络上有不少讨论,但很少有详细的解决方案。本文将介绍如何在 Qt 环境中使用 QString 类轻松实现 SQLite 表的动态创建,并提供详细的步骤和示例代码。 ... [详细]
  • 在维护公司项目时,发现按下手机的某个物理按键后会激活相应的服务,并在屏幕上模拟点击特定坐标点。本文详细介绍了如何使用ADB Shell Input命令来模拟各种输入事件,包括滑动、按键和点击等。 ... [详细]
  • 本文由瀚高PG实验室撰写,详细介绍了如何在PostgreSQL中创建、管理和删除模式。文章涵盖了创建模式的基本命令、public模式的特性、权限设置以及通过角色对象简化操作的方法。 ... [详细]
  • dotnet 通过 Elmish.WPF 使用 F# 编写 WPF 应用
    本文来安利大家一个有趣而且强大的库,通过F#和C#混合编程编写WPF应用,可以在WPF中使用到F#强大的数据处理能力在GitHub上完全开源Elmis ... [详细]
  • 本文介绍如何在PostgreSQL数据库中正确插入和处理JSON数据类型,确保数据完整性和避免常见错误。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 本文介绍了一种根据用户选择动态切换屏幕界面的方法,通过定义不同的选择块(Selection Block),实现灵活的用户交互体验。 ... [详细]
author-avatar
cb风雨彩虹
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有