【问题标题】:Export an SQL Stored Procedure as input / output with data types将 SQL 存储过程导出为具有数据类型的输入/输出
【发布时间】:2020-07-13 14:56:52
【问题描述】:

我正在使用 Microsoft SQL Server。

我想以一种有效的方式记录存储过程。类似的东西:

服务提供商名称:

Get_Emp_Info

输入:

EmpID INT

输出:

数据集 1:

  • 状态字符
  • StatusMessage varchar(100)

数据集 2:

  • 电子邮件 NVARCHAR(100)
  • 名称 NVARCHAR(100),

如果 SP 有许多连接并且输出并不总是来自一个表,我该如何实现?

【问题讨论】:

  • 只需向开发人员提供数据库架构 (CREATE TABLE...) 语句和存储过程源代码 - 但如果他们可以使用 SSMS 连接到数据库,他们应该能够自己获取。只需打开 SSMS > 数据库 > 任务 > 生成脚本,或生成 DACPAC 文件。
  • 然后使用SET FMTONLY ON,看这里:sqlshack.com/see-schema-result-set-running-query
  • 要像您要求的那样记录没有自动的方法......您必须手动完成。我不清楚连接如何影响创建文档?
  • 您是否正在寻找sp_describe_first_result_set - 这是我所知道的最接近的。
  • 那永远行不通。如果输出值根本不来自任何表,而是通过组合因素用 sp 计算出来的,情况会怎样呢?这样的工具怎么可能知道它是从哪里来的呢?此外,我还看到很多根据输入参数提供不同记录集(具有不同类型)的 sps - 我讨厌它们,但它们存在。要得到你想要的,你需要自己动手。

标签: sql sql-server stored-procedures


【解决方案1】:

我认为你必须手写的实际文档。

但是 SQL Server 确实提供了一个工具 sp_describe_first_result_set,它可能有助于获取输出结果的定义以供您的文档使用

【讨论】:

    猜你喜欢
    • 2020-09-19
    • 1970-01-01
    • 1970-01-01
    • 2021-11-16
    • 2012-03-02
    • 1970-01-01
    • 2013-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多