• sql 2005 调用存储过程


    可以在服务器或从客户端应用程序调用存储过程。在任何一种情况下,存储过程都始终运行于服务器上,或者使用服务器的上下文,或者使用数据库的上下文。执行存储过程时,不需要具备特殊的权限。存储过程由程序集添加到服务器或数据库上下文后,只要用户的角色允许执行存储过程所执行的操作,则任何用户均可执行该存储过程。

    调用 MDX 中的存储过程是按照与调用内部 MDX 函数相同的方式来完成的。对于不带参数的存储过程,则使用过程名和一对空括号,如下所示:

    MyStoredProcedure()

    如果存储过程有一个或多个参数,就会按顺序提供参数,并用逗号彼此分隔。下面的示例演示了带有三个参数的示例存储过程:

    MyStoredProcedure("Parameter1", 2, 800)

    在 MDX 查询中调用存储过程

    在所有 MDX 查询中,存储过程都必须返回 MDX 表达式所需的正确语法类型。如果存储过程未返回正确的类型,则会发生 MDX 错误。以下示例所演示的存储过程将返回数学运算的集合、成员和结果。

    返回集合

    以下示例实现一个名为 MySproc 的存储过程,它将返回一个集合。在第一个示例中,MySproc 直接在 SELECT 表达式中返回集合。在后面两个示例中,MySproc 返回的集合是 Crossjoin 和 DrilldownLevel 函数的参数。

    SELECT MySetProcedure(a,b,c) ON 0 FROM Sales
                SELECT Crossjoin(MySetProcedure(a,b,c)) ON 0 FROM Sales
                SELECT DrilldownLevel(MySetProcedure(a,b,c)) ON 0 FROM Sales

    返回成员

    以下示例显示返回成员的 MySproc 函数:

    SELECT Descendants(MySproc(a,b,c),3) ON 0 FROM Sales

    返回数学运算的结果

    SELECT Country.Members on 0, MySproc(Measures.Sales) ON 1 FROM Sales
  • 相关阅读:
    Templet
    linux command
    Codeforces Daily
    Programming Contest Challenge Book
    STL
    Struct
    Some of GDUFE
    [屯题] DP系列
    [颓废]ws_fqk省选前刷题记录
    [SDOI2009][BZOJ1876] SuperGCD|高精度|更相减损术
  • 原文地址:https://www.cnblogs.com/hutie1980/p/1403666.html
Copyright © 2020-2023  润新知