Excel 从存储过程中获取参数(不是 table)SQL

Excel get parameters (not table) from a stored procedure SQL

SQL server 2012 存储过程具有三个参数:

  1. INPUT 参数(命名为 UUT)
  2. OUTPUT 参数(名为 StartDate)
  3. OUTPUT 参数(名为 EndDate)

没有table输出。

An Excel 2013 通过 DATA/From Other Sources/From SQL Query

访问存储过程
{CALL [databasename].[dbo].[uspStoredProcedureName] (?,?,?)}

我有三个参数,因为 SQL 引擎不允许我只输入一个参数。 输出为空 table(如预期),但没有参数...

仅输入输入参数并获得两个输出的正确方法是什么?

因为没有更好的答案出现...

我发现获取参数的唯一方法是 select 它们具有 table 输出。我找不到获取参数输出的方法。

  • 添加到存储过程:

SELECT @pStartDate AS StartDate, @pEndDate as EndDate

  • 可选地,检查输出是否有效(仅限调试 - 您无法从 excel 中读取)

IF @pStartDate IS NULL OR @pEndDate IS NULL BEGIN SELECT @responseMessage = 'No data was read, check inputs' END

  • 在excel中,它会被粘贴为两个带有headers的调整单元格(例如字段名称将出现在A1和B1,值出现在A2和B2)