如何将存储过程中的大量参数从代码传递到 SQL Server

2024-01-08

如何从代码中将大量参数(比如 20+)传递给存储过程?

就像我们可以将所有参数分组在一个类对象中然后将其传递一样,但是在存储过程的情况下如何实现这样的 this 。

目前我必须创建 20 多个变量来传递参数。

谢谢 阿什瓦尼


如果您使用的是 SQL Server 2008,请使用表值参数 http://msdn.microsoft.com/en-us/library/bb510489.aspx。如果您不熟悉,它基本上允许您将表作为参数传递给存储过程。好处是您可以构建DataTable你可以随心所欲地进去看看。

我做了类似的事情,而不是传递数十个参数,而是传递了一个包含两列 [KEY] 和 [VALUE] 的 TVP。这样,当您的参数将来发生变化时,就会存在一个抽象层来隔离迁移。当然,具体如何选择实施还要根据具体情况而定。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将存储过程中的大量参数从代码传递到 SQL Server 的相关文章

  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • 在 LINQ 中按 Id 连接多表和分组

    我想按categoryId显示列表产品的名称组 这是我的代码 我想要我的视图显示结果 Desktop PC HP Red PC Dell Yellow PC Asus Red SmartPhone Lumia 720 Blue 我的组模型
  • 错误:表达式不产生值

    我尝试将以下 C 代码转换为 VB NET 但在编译代码时出现 表达式不产生值 错误 C Code return Fluently Configure Mappings m gt m FluentMappings AddFromAssemb
  • 使用 LINQ2SQL 在 ASP.NET MVC 中的各种模型存储库之间共享数据上下文

    我的应用程序中有 2 个存储库 每个存储库都有自己的数据上下文对象 最终结果是我尝试将从一个存储库检索到的对象附加到从另一个存储库检索到的对象 这会导致异常 Use 构造函数注入将 DataContext 注入每个存储库 public cl
  • 为什么 Google 测试会出现段错误?

    我是 Google Test 的新手 正在尝试提供的示例 我的问题是 当我引入失败并设置GTEST BREAK ON FAILURE 1 或使用命令行选项 GTest 将出现段错误 我正在考虑这个例子 https code google c
  • qdbusxml2cpp 未知类型

    在使用 qdbusxml2cpp 程序将以下 xml 转换为 Qt 类时 我收到此错误 qdbusxml2cpp c ObjectManager a ObjectManager ObjectManager cpp xml object ma
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • 在一个平台上,对于所有数据类型,所有数据指针的大小是否相同? [复制]

    这个问题在这里已经有答案了 Are char int long 甚至long long 大小相同 在给定平台上 不能保证它们的大小相同 尽管在我有使用经验的平台上它们通常是相同的 C 2011 在线草稿 http www open std
  • 我可以使用 moq Mock 来模拟类而不是接口吗?

    正在经历https github com Moq moq4 wiki Quickstart https github com Moq moq4 wiki Quickstart 我看到它 Mock 一个接口 我的遗留代码中有一个没有接口的类
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • “接口”类似于 boost::bind 的语义

    我希望能够将 Java 的接口语义与 C 结合起来 起初 我用过boost signal为给定事件回调显式注册的成员函数 这非常有效 但后来我发现一些函数回调池是相关的 因此将它们抽象出来并立即注册所有实例的相关回调是有意义的 但我了解到的
  • 使用 %d 打印 unsigned long long

    为什么我打印以下内容时得到 1 unsigned long long int largestIntegerInC 18446744073709551615LL printf largestIntegerInC d n largestInte
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • 我是否需要在外键上指定 ON DELETE NO ACTION?

    我有以下与 SQL Server 2012 一起使用的 DDL CREATE TABLE Subject SubjectId INT IDENTITY 1 1 NOT NULL Name NVARCHAR 50 Not NULL CONST
  • System.IO.FileNotFoundException:找不到网络路径。在 Windows 7 上使用 DirectoryEntry 对象时出现异常

    我正在尝试使用 DirectoryEntry 对象连接到远程 Windows 7 计算机 这是我的代码 DirectoryEntry obDirEntry new DirectoryEntry WinNT hostName hostName
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • Oracle Data Provider for .NET 不支持 Oracle 19.0.48.0.0

    我们刚刚升级到 Oracle 19c 19 3 0 所有应用程序都停止工作并出现以下错误消息 Oracle Data Provider for NET 不支持 Oracle 19 0 48 0 0 我将 Oracle ManagedData
  • SQL 更新 - 更新选定的行

    我正在使用 SQL Server 2008 我有一个名为MYTABLE有两列 ID STATUS 我想编写一个存储过程来返回其记录STATUS是 0 但是这个存储过程必须更新STATUS返回行数为 1 如何在单个查询中执行此选择和更新操作
  • 从列表中选择项目以求和

    我有一个包含数值的项目列表 我需要使用这些项目求和 我需要你的帮助来构建这样的算法 下面是一个用 C 编写的示例 描述了我的问题 int sum 21 List
  • 如何将 PostgreSql 与 EntityFramework 6.0.2 集成? [复制]

    这个问题在这里已经有答案了 我收到以下错误 实体框架提供程序类型的 实例 成员 Npgsql NpgsqlServices Npgsql 版本 2 0 14 2 文化 中性 PublicKeyToken 5d8b90d52f46fda7 没

随机推荐

  • 将值替换为该列的平均值 - 许多列

    我有一个包含超过 1000 列和 11000 行的 Excel 工作表 全部包含数字数据 数据中存在用 表示的缺失值 我想用它所在列的平均值替换所有 值 手动执行此操作需要很长时间 那么是否有一个公式可以实现此目的 非常感谢您的帮助 我可以
  • Apache Spark,向现有 DataFrame 添加“CASE WHEN ... ELSE ...”计算列

    我正在尝试使用 Scala API 将 CASE WHEN ELSE 计算列添加到现有的 DataFrame 中 起始数据框 color Red Green Blue 所需的数据帧 SQL 语法 CASE WHEN color Green
  • 在 flutter 中从父颜色生成自定义色调

    我需要找到一种更好的方法来从给定的自定义颜色生成阴影颜色以用于主题目的 到目前为止 我找到了一种通过降低给定颜色的不透明度来实现此目的的方法 如下所示 所以我可以强调颜色颜色和给定颜色的褪色颜色到此功能 import package flu
  • 如何从主脚本将导入的模块块传输到表面上?

    在我的主文件中 我有一个名为win 我像这样导入一个模块from draw import def draw image x y win blit image x y 这是一个来自draw 它不起作用 因为win没有定义 如何定义它 将目标表
  • ES6导出默认函数

    我可以为每个文件导出多个函数吗 似乎当我这样做时 第二个函数会覆盖第一个函数 例子 在my index js file export default function aFnt console log function a export d
  • Angular 4 - router.url 单元测试

    如何在 Angular 4 单元测试中模拟 router url 我在组件的 ngOninit 中使用 router url 但在我的测试中 router url 的值为 在 Angular v9 中Router url是只读 getter
  • 未找到 Django URL 模式

    我按照教程允许用户注册帐户 但似乎找不到 url 路径 当我设置名称时 它允许我访问 127 0 0 1 8000 accounts signup 但不能访问 127 0 0 1 8000 signup 我尝试将 urlpatterns 从
  • j_spring_security_check HTTP 状态 404(自定义登录)

    我正在使用 Spring 4 Hibernate 4 我检查了每一篇文章 但我无法找出问题所在 Web xml
  • iOS 上有什么好的自定义键盘实现教程吗?

    我需要为区域语言 泰米尔语 制作一个自定义键盘 如果用户按下自定义键盘键 我必须引入泰米尔字体 那可能吗 如果是的话 有可用的教程或资源吗 提前致谢 http cocoacontrols com platforms ios controls
  • R dplyr。过滤包含一列数值向量的数据框

    我有一个数据框 其中一列包含数字向量 我想根据涉及该列的条件过滤行 这是一个简化的示例 df lt data frame id LETTERS 1 3 name c Alice Bob Carol mylist list c 1 2 3 c
  • 使用猫头鹰轮播在触摸设备上滑动时禁用垂直滚动

    我想在移动设备上水平滑动轮播时禁用网页上的垂直滚动 我正在使用猫头鹰旋转木马 我尝试使用 css Overflow hidden 到 html body 但不起作用 尝试了其他解决方案 但它们不起作用 我尝试过的代码在下面 Tried th
  • 日期时间之间的差异

    我这里有一些代码可以计算两个日期时间之间的小时差 这里有点不知所措 代码时好时坏 我不知道为什么 var date tr find td eq 10 input val var time tr find td eq 10 option se
  • 从 doc 和 docx 中提取文本

    我想知道如何阅读 doc 或 docx 的内容 我使用的是 Linux VPS 和 PHP 但如果有使用其他语言的更简单的解决方案 请告诉我 只要它在 Linux 网络服务器下工作即可 在这里我添加了从中获取文本的解决方案 doc docx
  • 包含 13 位数字的字段的正则表达式?

    我需要一个正则表达式来检查字段是否为空或者是否正好是 13 位数字 问候 弗朗西斯 P 尝试这个 另请参阅 rubular com http www rubular com r SYIlg16mHn d 13 解释 是字符串锚点的开头和结尾
  • 在代码中创建 RowDefinitions 和 ColumnDefinitions

    我为Windows Phone开发应用程序 我想创建 2 行 2 列的表 我为此表创建 xaml 代码
  • 使用无障碍 JQuery 在部分视图中显示错误消息时遇到问题

    以下是我在 MVC3 中的区域 Model public class AdminModule Display Name My Name Required public String MyName get set 局部视图 model 1 A
  • protobuf:连续序列化和反序列化到/从套接字

    在消息序列化到套接字 SerializeToFileDescriptor 后 C 客户端和 C 服务器之间的简单通信陷入困境 C 客户端 Person person person set id 54321 person set name b
  • 如何等待 Angular2 处理动态多个 Http 请求?

    我知道你可以通过调用 forkJoin 方法来使用 Observable 来等待多个 http 请求完成 如下所示 getBooksAndMovies Observable forkJoin this http get app books
  • 从 HTML 横向打印

    我有一个 HTML 报告 由于列很多 需要横向打印 有没有办法做到这一点 而无需用户更改文档设置 浏览器有哪些选项 在 CSS 中 您可以设置 page 属性 如下所示 media print page size landscape pag
  • 如何将存储过程中的大量参数从代码传递到 SQL Server

    如何从代码中将大量参数 比如 20 传递给存储过程 就像我们可以将所有参数分组在一个类对象中然后将其传递一样 但是在存储过程的情况下如何实现这样的 this 目前我必须创建 20 多个变量来传递参数 谢谢 阿什瓦尼 如果您使用的是 SQL