首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取SSIS中的最后一个多维数据集处理日期

获取SSIS中的最后一个多维数据集处理日期
EN

Stack Overflow用户
提问于 2016-02-11 07:48:42
回答 1查看 810关注 0票数 0

我需要在SSIS中获取SSAS多维数据集的最后处理日期,并将其保存到一个变量中。

我尝试过一个“执行SQL任务”:

代码语言:javascript
复制
SELECT LAST_DATA_UPDATE as LAST_DT FROM $system.mdschema_cubes
WHERE CUBE_NAME = 'CubeName'

它在查询窗口中工作正常,但在SSIS中,它说:结果集绑定上不支持数据类型。

然后我试过:

代码语言:javascript
复制
WITH MEMBER [Measures].[LastProcessed] AS ASSP.GetCubeLastProcessedDate() SELECT [Measures].[LastProcessed] ON 0 FROM [CubeName] 

它说'ASSP.GetCubeLastProcessedDate‘函数不存在。

有什么办法吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-11 10:18:06

链接服务器可能是您的最佳选择;

使用以下内容创建链接服务器,并酌情进行更改:

代码语言:javascript
复制
EXEC master.dbo.sp_addlinkedserver 
@server = N'LINKED_SERVER_OLAP_TEST', --Change to a suitable name
@srvproduct='', --Creates the productname as blank
@provider=N'MSOLAP', --Analysis Services
@datasrc=N'localhost', --Change to your datasource
@catalog=N'TESTCUBE' --Change to set the default cube

更改执行SQL任务的数据源,以确保它指向承载链接服务器的任何数据库,即不要使用分析服务数据源使用标准OLE DB。然后在执行SQL任务中有以下内容(酌情更改)。

代码语言:javascript
复制
SELECT * 
FROM OpenQuery(LINKED_SERVER_OLAP_TEST,'SELECT LAST_DATA_UPDATE as LAST_DT FROM $system.mdschema_cubes
WHERE CUBE_NAME = ''CUBENAME''') 

将变量设置为DATETIME,将结果集设置为单行。

也许还有其他方法可以做到这一点,但是我一直认为这种方法是最直接的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35333550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档