在尝试删除集合之前测试它是否存在

2024-02-25

In SQL在删除表之前,我将首先检查它是否存在,以免导致错误,如下所示:

IF OBJECT_ID('TEMPDB..#table') IS NOT NULL 
  BEGIN 
      DROP TABLE #table 
  END

In MDX我可以用一种方法来检查是否set or member在尝试删除它之前已经存在。

目前我的一些结构中有以下结构.mdx文件。我向多维数据集添加一个自定义集,然后在后续的多个脚本中使用该集,即它们是多批处理脚本。

/*
//I run the following manually...
DROP SET [XCube].[xSet]
*/

CREATE 
    SET [XCube].[xSet] AS
        blah blah

1.
SELECT x FROM XCube USING variousconditions AND xSet
GO

2.
SELECT y FROM XCube USING variousconditions AND ySet
GO

3.
SELECT y FROM XCube USING variousconditions AND ySet
GO

将上述上下文放在一边,我的问题非常简单:

我如何测试是否xSet存在以便我可以执行DROP SET [XCube].[xSet]仅在需要时?


我可以给你一个部分答案:你可以找到有关你的立方体的对象的信息架构行集 http://technet.microsoft.com/en-us/library/ms126233.aspx,这类似于INFORMATION_SCHEMA关系数据库中的视图。从 SQL Server 2008 开始,您可以使用 SQL 的有限子集访问这些数据(没有联接,只是简单的column_name = 'value'where 子句中的条件,...) 像这样:

select * 
  from $SYSTEM.MDSCHEMA_SETS
 where SET_NAME = 'xSet'
   and CUBE_NAME = 'XCube'

Analysis Services 会自动检测查询是 SQL 还是 MDX(或者,从 SQL2012 开始是 DAX)。

如果该集合存在,这将返回一条记录;如果不存在,则不会返回任何记录。但我不知道 MDX 中有一种根据结果有条件执行代码的机制。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在尝试删除集合之前测试它是否存在 的相关文章

  • SSAS教程(一)——SSAS简介

    SSAS全称SQL Server Analysis Services Analysis Services 是在决策支持和商业分析中使用的分析数据引擎 它为商业报表和客户端应用程序提供了企业级语义数据模型 比如Power BI Excel R
  • 通过过滤度量值在 MDX 中定义计算成员

    我需要在 MDX 中定义一个计算成员 这是 SAS OLAP 但我很感谢使用不同 OLAP 实现的人员提供的答案 新度量的值应通过应用附加过滤条件根据现有度量计算得出 我想通过一个例子会更清楚 现有衡量标准 总流量 现有维度 方向 入 或
  • 如何对数据仓库中的流程和状态历史进行建模?

    假设我们有D PROCESS D WORKER and D STATUS作为尺寸和事实F EVENT将流程 内容 与工作人员 负责人 和 当前 状态联系起来 进程状态随时间而变化 我们应该存储在F EVENT每个进程 状态 工作人员一行 或
  • SSAS 计算成员聚合问题

    我有一个非常简单的计算成员 CREATE MEMBER CURRENTCUBE Account Account Parent amp NA 1 Beginning Subscribers AS Account Account Parent
  • Excel 中具有多个条件的 CUBESET() 函数

    我正在尝试在 Excel 中创建 CUBESET 函数 但我不知道如何使用多个条件过滤它同一维度内 这就是我迄今为止所遵循的一个标准 示例1 CUBESET ThisWorkbookDataModel Facebook Bucket C A
  • AMO OLAP 查询绑定

    根据业务逻辑 有时我需要更改多维数据集中的客户维度的源表 以前我使用以下代码更改多维数据集的结构 MyServerDataSourceView Schema Tables DimCustomers ExtendedProperties Qu
  • 强制 mdx 查询返回列名

    从 powerpivot 连接到 SSAS 时 我遇到以下问题 如果由于某种原因 mdx 查询没有返回行 也不会返回列名 并且 powerpivot 会给出错误 在 SSMS 中执行此类查询时 如果 mdx 什么也不返回 则得到 0 行 如
  • 从关系型 OLTP 数据库到 OLAP 多维数据集的最佳方法是什么?

    我有一个相当标准的 OLTP 标准化数据库 并且我意识到我需要在数据的不同维度上执行一些复杂的查询 平均值 标准差 所以我转向了 SSAS 和 OLAP 多维数据集的创建 然而 要创建多维数据集 我相信我的数据源结构需要采用 星形 或 雪花
  • 尝试计算 MDX 中的四分位数

    我的数据如下所示 ID PersonID CompanyID DateID Throughput AmountType 33F467AC F35B 4F24 A05B FC35CF005981 7 53 200802 3 0 04EE0FF
  • 函数计算已在真/假表达式中使用,该表达式用作表过滤表达式,这是不允许的

    我需要检查 ssas 表格模型中某个度量的当月和当年值 但由于类型不匹配 我无法执行此操作 为此 我创建了一个使用此 dax 查询的度量 CurrMonthYear CONCATENATE CONCATENATE concatenate y
  • MDX 查询返回记录数

    以下是我的 MDX 查询 SELECT NON EMPTY Measures Fact Sample Count ON COLUMNS NON EMPTY Fact Sample Sample Reference No Sample Ref
  • 使用 Python 从 PowerPivot 模型中提取原始数据

    当我必须使用 Python 从 PowerPivot 模型中读取一些数据时 看似微不足道的任务变成了真正的噩梦 我相信在过去的几天里我已经对此进行了很好的研究 但现在我遇到了困难 并且希望得到 Python SSAS ADO 社区的一些帮助
  • SSAS Cube 处理日志

    SSAS立方体在哪里加工 不是错误 不是飞行记录器 日志存储了吗 我们有一个运行 SQL Server Analysis Services 命令的 SQL 代理作业 其中有一些 DMX 处理每个维度 然后处理多维数据集数据库 包含两个多维数
  • 适用于 asp.net core 的 ADOMD nuget 包

    我正在看ADOMD nuget 包 https www nuget org packages Microsoft AnalysisServices AdomdClient retail amd64 好像不支持ASP NET Core框架 如
  • 如何在MDX查询中的行上显示多个维度?

    我有一个叫做Sales KG在我的立方体和二维中 Groups and Formats 有没有办法在单行中显示最后一个 我有这样的疑问 select Measures Sales KG on Columns Formats Format T
  • 根据当前用户过滤 Power BI 报告

    我们目前正在为我们公司开发 Power BI 仪表板 Office 365 并希望根据当前用户的偏好定制仪表板上的信息 我们公司有多个部门和子部门 因此向所有用户显示每个部门的数据会适得其反 例如 如果 Bob 属于欧洲销售 他将仅看到欧洲
  • 多个维度的度量总计的计算成员

    我正在尝试使用计算得出的度量 AS 计算总计度量 CALCULATE CREATE MEMBER CURRENTCUBE Measures Total On Hand Amount AS Warehouses Warehouses All
  • 在 OLAP 多维数据集中,过滤属性时总计错误

    用户尝试检查每个销售人员的销售额 样本数据 Salesperson Sales Amount 001 1000 002 500 003 750 Grand Total 2250 看起来不错 但我们有以下层次结构Company gt Clas
  • 使用 R 连接到 SSAS 多维数据集

    是否可以使用 R 查询 SQL Server Analysis Services 多维数据集 我在不同的外部服务器上有这个多维数据集 并且我正在我的计算机上工作 但我使用我的域帐户在服务器上拥有管理员权限 简而言之 我想创建一个分析服务解决
  • 使用 MDX 查询列出维度成员

    有没有办法列出维度成员而不获取每个成员的默认度量 您可以在相反的轴上选择任何内容 SELECT on 0 DESCENDANTS Dimension Hierarchy on 1 FROM Cube 选择空集可防止 SSAS 在相反轴上添加

随机推荐