【问题标题】:SQL Server 2012 Stored Procedure to accept an IN parameter and do multiple insertsSQL Server 2012 存储过程接受 IN 参数并执行多次插入
【发布时间】:2016-04-06 22:22:39
【问题描述】:

我想创建一个 SQL Server 2012 存储过程,它将从 PHP 中获取一个数组作为 IN 参数。

该过程将插入的表称为 dbo.Users,它将包含我关心的三列:createdby、userid、emailaddress

该数组将包括用户 ID 和电子邮件地址。它调用将包含一个或多个要插入到用户表中的记录。

如何获得接受数组的过程以及如何将数组转换为多个插入语句到我的用户表中?我需要使用表值参数吗?我听说过它们,但以前没有使用过。

谢谢!

【问题讨论】:

  • 是的,你最好使用table-valued parameter。在存储过程中将有一个INSERT 语句一次插入来自传递的表值参数的所有行。
  • 谢谢@VladimirBaranov - 该页面上的示例似乎很简单。它实际上是如何处理数组的?
  • 我不明白你的问题是什么。数组是一个表。表是数组。浏览 MSDN 中的示例,如果您有特定问题 - 请在此处提问。
  • 你可以按照@VladimirBaranov 提供的建议或者阅读这篇文章来为操作Link实现一个xml

标签: arrays sql-server stored-procedures sql-server-2012 table-valued-parameters


【解决方案1】:

您可以使用 XML 参数将一组/列表相关数据传递给存储过程,也可以使用表值参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-03
    • 2017-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-02
    • 1970-01-01
    相关资源
    最近更新 更多