数据库试图错误导致SSAS处理失败

本文详细描述了在处理Cube时遇到算术溢出错误的问题,通过检查试图代码,发现数据仓库字段类型更改导致的问题,并提供了解决方案。分享了错误处理的经验和预防措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:
    今天在某个项目中处理了一下Cube,但是居然报错啦,处理失败!
    
    一大串红色的错误,看的我心慌慌,仔细一想我并没有做什么错误的操作啊,我仔细寻找了一下错误、看了几遍,删除了旧的Cube处理了几次都是报错,甚是郁闷,我仔细看看错误信心,其中 "将expression转换为数据类型datetime时出现算术溢出错误。",
    根据我平时经验告诉我有2种可能:
    1、CUBE中的试图表中创建的命名计算计算出错
    2、数据仓库中读取表数据的时候错误,一般表中有计算的大概都是创建试图,在试图中的计算转换有问题。
    于是我检查了所有涉及的命名计算,发现命名计算没有问题,都是有数据并且正确的
    接下来我就去一个个看看数据仓库的试图,果然有错误,在某个试图写的代码中有个数值转换为时间的逻辑错误啦,这是因为我前一天晚上更改了数据仓库中那个字段的类型,从原来的nvarchar改为了int,所以导致这边出错,最后更改了试图代码,再次运行就可以啦。
    经验:
        1、处理Cube报错的时候要多积累平时的错误信息,记录下来,一般错误内容如果相同,所导致的原因通常都是一个原理的,所以积累每一次的错误是为了防止日后烧饭错误。
        2、修改数据仓库的字段一定要所有涉及到的业务逻辑都改过来,否则忘记啦,真是错误找死人。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值