首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用tDBinput与Talend一起选择全局映射给出错误:无效字符常量

使用tDBinput与Talend一起选择全局映射给出错误:无效字符常量
EN

Stack Overflow用户
提问于 2021-07-29 03:52:20
回答 1查看 99关注 0票数 1

我必须去掉人名中的重音符号,但我不能应用Talend中的函数,因为它在SQL oracle中有效。

此查询在我的tDBInput组件中有效:

代码语言:javascript
复制
"SELECT  '"+((String)globalMap.get("copyOfSORTIE.NOM"))+"' as nom_nom_compl,
         '"+((String)globalMap.get("copyOfSORTIE.ENTETE"))+"' entete
FROM DUAL"

但是,当我想添加convert函数时,它不起作用

此查询不起作用:

代码语言:javascript
复制
"SELECT  '"+((String)globalMap.get(CONVERT("copyOfSORTIE.NOM",'US7ASCII')))+"' as nom_nom_compl,
         '"+((String)globalMap.get("copyOfSORTIE.ENTETE"))+"' entete
FROM DUAL"

在我的才华中:

我得到了这个错误

它的工作语法是什么?

谢谢!

EN

Stack Overflow用户

发布于 2021-07-29 15:35:27

这里有两件事:

  • 我不知道CONVERT方法,但我可以看到你将它应用于globalMap变量的键,而不是值(好像你想转换"myKey“,而不是附加在键上的"myValue”)。您确定这是您想要实现的目标吗?如果不是,则语法应类似于"SELECT CONVERT('"+((String)globalMap.get("copyOfSORTIE.NOM"))+"','US7ASCII') "

  • 在talend中实现的一个有用的java方法是TalendString.removeAccents(""),您可以将其直接应用于talend变量,从而不使用SQL方法。
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68566612

复制
相关文章

相似问题

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