sql 2005 调用存储过程
2009-03-05 10:21
260 查看
可以在服务器或从客户端应用程序调用存储过程。在任何一种情况下,存储过程都始终运行于服务器上,或者使用服务器的上下文,或者使用数据库的上下文。执行存储过程时,不需要具备特殊的权限。存储过程由程序集添加到服务器或数据库上下文后,只要用户的角色允许执行存储过程所执行的操作,则任何用户均可执行该存储过程。
调用 MDX 中的存储过程是按照与调用内部 MDX 函数相同的方式来完成的。对于不带参数的存储过程,则使用过程名和一对空括号,如下所示:
如果存储过程有一个或多个参数,就会按顺序提供参数,并用逗号彼此分隔。下面的示例演示了带有三个参数的示例存储过程:
调用 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 |
相关文章推荐
- SQL 2005中用存储过程调用Web Services
- 【原】SQL存储过程调用慢,但是重新编译一下存储过程就很快
- [翻译]通过WebService调用SQLXML(SQL Server 2005) (转)
- C#中调用SQL存储过程
- 用2005生成2000格式的存储过程sql
- SQL2005 在程序中调用另外一个预存程序
- 数据库基类方法(直接使用SQL语句或存储过程调用)
- SQL Server 2005 导出包含(insert into)数据的SQL脚本 (使用存储过程)
- sql2005创建存储过程(需要注意的几点)
- Hibernate4调用SQL和存储过程
- Oracle 编写存储过程,在pl/sql中调用编写好的存储过程例子
- SQL Server 2005 导出包含(insert into)数据的SQL脚本 (使用存储过程)
- [Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
- SQL调用存储过程
- SQL Server 2005 导出包含(insert into)数据的SQL脚本 (使用存储过程) 分类: 数据库
- [Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
- Oracle PL/SQL如何动态调用存储过程 收藏
- SQL 2005 批量修改表和存储过程的schema
- SQL一个存储过程调用另一个存储过程 获得返回值问题
- Microsoft SqlServer 2005 通用分页 存储过程