【问题标题】:Connecting to an SQL Server User Defined Function from Excel从 Excel 连接到 SQL Server 用户定义函数
【发布时间】:2012-01-30 17:55:57
【问题描述】:

我在 SQL Server 中创建了一个内联表值用户定义函数

我想在 Excel 电子表格的各个单元格中输入参数,并有一个表格,当我输入这些参数时,表格会根据这些参数的结果进行更新。

通常,我使用 Microsoft Query 执行此操作,但这不允许我调用用户定义的函数。那么我该如何创建一个 odc 文件,或者以其他方式连接到该函数呢?

我正在使用 Excel 2010 和 SQL Server 2008

【问题讨论】:

    标签: sql-server excel


    【解决方案1】:

    我也遇到了同样的问题。您需要使用 VBA 和 ADO 通过 SQL 查询调用带参数的函数。

    This link shows how to make the call for a scalar function.

    表值函数与此类似,但您必须将数据作为数组/矩阵返回,才能直接从 Excel 单元格调用。或者,您可以follow the directions here 使用 .CopyFromREcordset() 并将结果放入工作表中。

    【讨论】:

    • +1 这回答了我的问题 - 我会标记你的答案正确。
    【解决方案2】:

    你试过了吗:

    select dbo.YourFunction()
    

    对于标量 UDF,或者:

    select * from dbo.YourFunction()
    

    对于表值 UDF? MS Query 可能会抱怨它无法以图形方式显示查询,但您应该可以在 SQL 模式下输入它。

    【讨论】:

    • 不过,我无法向其添加参数。它抱怨Parameters are not allowed in queries that cannot be displayed graphically
    猜你喜欢
    • 2018-06-30
    • 2016-11-25
    • 2014-04-15
    • 2019-06-10
    • 2021-09-02
    相关资源
    最近更新 更多