开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

dataworks中adb for mysql节点,sql逻辑中含有分号,应该怎么转义啊?

你好,麻烦问一下dataworks中adb for mysql节点,sql逻辑中含有分号,应该怎么转义啊?运行时自动把代码截断了?image.png
image.png
在dbeaver中可以执行image.png

展开
收起
真的很搞笑 2023-08-07 19:29:24 79 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    在DataWorks中,ADB for MySQL节点中的SQL逻辑中含有分号时,您可以通过转义分号的方式来解决截断的问题。下面是一种常用的转义分号的方法:

    在SQL逻辑中,将分号(;)替换为两个连续的分号(;;)。这样,DataWorks在运行时就会将两个连续的分号(;;)视为转义的分号,而不会将其作为SQL语句的结束符。

    2023-08-09 22:51:15
    赞同 展开评论 打赏
  • 原句 复制到adb 本身能执行成功吗 ,在数据集成同步任务配置中如果字段名或表名涉及到了关键字、大小写英文、中划线(-)、斜杆(/)、特殊符号等,可以在任务配置中对字段名或表名加转义符进行转义。

    【常见的转义符列表】

    json转义符:反斜杠\
    PostgreSQL、HANA转义符:双引号""
    MaxCompute、MySQL转义符:反单引号``

    【添加转义符的方式】
    方式一:向导模式>字段映射编辑
    image.png

    方式二:转脚本模式在json中对字段名加转义符。
    注意:如果转义符是双引号的,由于双引号是json的关键字所以还需要对双引号再做一次转义,比如:"column":["your_column_name"] 转义后 "column":["\"your_column_name\""]
    image.png

    【转义举例】

    PostgreSQL表名称为123Test,转义符为双引号,但双引号本身是json关键字,json转义符是反单引号,所以转义后表名称为"123Test"
    当SAP HANA Reader中字段名称包含斜杠(/),需要使用反斜杠加双引号("your_column_name")进行转义,例如,字段名称为/abc/efg,则转义后字段名称为"/abc/efg"
    ,此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-08-08 16:52:11
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 相关电子书

    更多
    SQL Server在电子商务中的应用与实践 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载

    相关镜像