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

请教个问题, 我有一条replace into 的语句, 直接把值写固定值能写到ADB里面, 但是

请教个问题, 我有一条replace into 的语句, 直接把值写固定值能写到ADB里面, 但是用replace into select 查询表这种就插入不到库里面, 不知道为啥。 请问下这种怎么排查呢, 显示执行成功了。 但是数据没过去

展开
收起
游客3oewgrzrf6o5c 2022-06-28 17:50:26 251 0
1 条回答
写回答
取消 提交回答
  • 十分耕耘,一定会有一分收获!

    楼主你好,如果您在阿里云上使用 replace into select 查询语句,但是数据没有插入到ADB中,可能是以下几个原因:

    1. 查询语句没有返回任何结果:如果您的查询语句没有返回任何结果,那么 replace into select 语句也不会插入任何数据到ADB中。您可以检查查询语句,确保查询语句能够返回正确的结果。

    2. replace into 的主键重复:如果您的 replace into 语句中的主键和已有的主键重复,那么新的数据不会插入到ADB中。您可以检查主键是否重复,并尝试使用其他主键插入数据。

    3. 数据类型不匹配:如果您的查询结果和ADB中的表结构不匹配,那么数据插入可能会失败。您可以检查数据类型是否匹配,并尝试将查询结果转换为与ADB表结构匹配的类型。

    4. ADB连接失败:如果ADB连接失败,那么数据插入也会失败。您可以检查ADB连接是否正常,并尝试重新连接ADB。

    5. ADB表结构变更:如果ADB表结构发生了变化,例如添加或删除了列,那么数据插入也可能会失败。您可以检查ADB表结构是否与查询结果匹配,并尝试更新表结构以匹配查询结果。

    您可以通过检查阿里云的日志,以及调试查询语句和ADB连接,来排查这个问题。

    2023-07-23 13:01:48
    赞同 展开评论 打赏

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

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载

相关实验场景

更多