今天为测试sql 2005 cube的数据查询效率,需要利用sql 2005 中 visual studio 创建cube,但处理维度属性时报错:
OLE DB 错误: OLE DB 或 ODBC 错误 : 不支持要求的转换。。
OLAP 存储引擎中存在错误: 处理“sale analysis”数据库的“地区”维度的“城市”属性时出错。
OLAP 存储引擎中存在错误: 由于处理过程中遇到的错误数达到为操作定义的最大允许错误数,处理操作结束。
OLE DB 错误: OLE DB 或 ODBC 错误 : 不支持要求的转换。。
OLAP 存储引擎中存在错误: 处理“sale analysis”数据库的“地区”维度的“乡镇”属性时出错。
OLAP 存储引擎中存在错误: 由于处理过程中遇到的错误数达到为操作定义的最大允许错误数,处理操作结束。
OLE DB 错误: OLE DB 或 ODBC 错误 : 操作已被取消。。
找了半天终于把这个问题解决了,现把我这次遇到的问题分享一下。
如果数据源中数据库表的字段类型是text 类型,要将该列作为维度属性创建,则会出现上述的错误。在这种情况下,如果通过studio自动生成一个cube来测试,此时你会发现该字段所对应的维度属性的类型将会被设置成key属性的类型,同时维度属性值也是key属性的值,这样肯定满足不了我们的需求。
后来将数据库中的TEXT类型列全部转换成nvchar类型。就能成功处理。
注:上述所说的数据库是sql 2005.
作者:slob