【问题标题】:process table from SSAS tabular in tsql, and get back number of rows transferred (inserted)在 sql 中从 SSAS 表格处理表,并取回传输的行数(插入)
【发布时间】:2020-05-06 17:21:03
【问题描述】:

我想通过 TSQL 脚本单独处理来自 SSAS 表格模型的表格

我已经找到了方法,但现在我错过了一种方法来取回更新的行数......当通过 gui (ssms) 执行此操作时,它会返回该数字,现在我'想要做同样的事情......

DECLARE @Command VARCHAR(MAX) 
SET @Command = '
{
  "sequence": {
    "operations": [
      {
        "refresh": {
          "type": "dataOnly",
          "objects": [
            {
              "database": "test",
              "table": "D_Status",
            }
            ]
        }
      }
    ]
  }
}'
EXEC (@Command) AT [server\TABULAR];

我希望有一种行数,但这不起作用(总是返回 1)

PRINT 'Record count: ' + CONVERT(varchar, @@ROWCOUNT)

【问题讨论】:

    标签: tsql ssas-tabular


    【解决方案1】:

    GUI 中显示的行数与表中的总行数相同(不仅仅是更新/新行)。

    因此,您可以从多维数据集中复制查询并计算其中的行数。您可能希望使用 DMV 来获取所有表后面的查询,如下所述:How to find lineage between SSAS (Tabular Model) and SQL database

    【讨论】:

    • 你真的能得到超过 DMV 的行数吗?我能够获取元数据,但没有行数
    • 我终于找到了:SELECT * FROM OPENROWSET('MSOLAP','DATASOURCE=.; Initial Catalog=test;', 'SELECT * FROM $SYSTEM.DISCOVER_STORAGE_TABLES ')
    • 我的意思是您可以从 DMV 获取查询文本,然后您可以单独运行它们。不过,您的解决方案要好得多!
    猜你喜欢
    • 2017-04-08
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 2021-07-19
    • 2020-01-15
    • 1970-01-01
    • 1970-01-01
    • 2020-08-21
    相关资源
    最近更新 更多