gpt4 book ai didi

sql-server - 从 Excel 将参数传递到 SQL Server 上的 MS Query 中的临时变量

转载 作者:行者123 更新时间:2023-12-02 23:05:32 24 4
gpt4 key购买 nike

我已经使用 Microsoft 查询创建了一个参数查询,如上所述 here 。但是,当我想将参数传递给临时变量并创建表变量并编辑它们以获得所需的结果时,而不是执行 10 到 15 个联接并在 where 子句中提及参数,我会收到错误

[Microsoft] [ODBC SQL Server Driver] Invalid Parameter number

[Microsoft] [ODBC SQL Server Driver] Invalid Descriptor Index

我的代码看起来像这样,它非常复杂,有许多临时表和临时变量

BEGIN
SET NOCOUNT ON

DECLARE @sDate DATETIME, @eDate DATETIME; --used in many places to manipulate temp table

SET @sdate = ?
SET @edate = ?

DECLARE @Temptable TABLE (Variable1 INT ,...... VariableN DECIMAL(18,4));

Manipulate @temptable

Select * from @Temptable
END

如何将参数传递给 SQL Server 2005 数据库的 Excel 2007 中的临时变量?我无权在数据库中创建存储过程并将它们作为参数传递给数据库。

更新

我已经按照David Vandenbos的建议通过VBA找到了一种方法。我仍然很好奇是否可以在没有 VBA 帮助的情况下完成此操作。

最佳答案

您可以在声明变量之前添加 SET NOCOUNT ON。我在 Excel 2010 中与 Microsoft Query 和 SQL Server 2005 完美配合。

SET NOCOUNT ON
DECLARE @VAR1 VARCHAR(4)
SET @VAR1 = '1234'
SELECT @VAR1

https://social.msdn.microsoft.com/Forums/office/en-US/d8003854-d11a-44f7-960c-a042347736d7/microsoft-query-cannot-run-sql-code-with-a-tsql-variables-in-it?forum=exceldev

关于sql-server - 从 Excel 将参数传递到 SQL Server 上的 MS Query 中的临时变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15848015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com