Kettle Unable to get list of element types for namespace 'pentaho'

我把公司的kettle5.0升级到7.0之后遇到了这个问题,困扰了很久,百度谷歌都查不到结果,所以只能自己查找原因。

由于已经被搞好了,现在无法截图了,总之就是下面这行报错,遇到这个错误的同学估计也不需要看截图就明白:

Unable to get list of element types for namespace 'pentaho'

点开Detail里面,会看到是由于下面一句SQL代码导致的,

Caused by: org.pentaho.di.core.exception.KettleDatabaseException: 
An error occurred executing SQL: 
SELECT ID_NAMESPACE FROM R_NAMESPACE WHERE NAME = ?
The data types text and nvarchar are incompatible in the equal to operator.

既然是SQL,那么我把下面一句代码放进对应的DB查询一下,会发现在query里面的错误和上面一样,都是:

The data types text and nvarchar are incompatible in the equal to operator./在等号操作符中,文本和nvarchar数据类型是不兼容的。

也就是说上面的‘?’是nvarchar类型,而NAME字段是text类型导致这个错误,我们确认一下:

运行下面这句

sp_help R_NAMESPACE

能看到NAME字段的type是text(这里我已经改过了,原本是text,所以加了个注释)。

看到这里答案就很简单了,

直接ALTER TABLE R_NAMESPACE ALTER COLUMN NAME varchar(2000)

然后再测试,一切OK。

 

转载于:https://www.cnblogs.com/howie-we/p/10107906.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值