报错信息:
    ERR-CODE: [TDDL-4601][ERR_EXECUTOR] not support cross db update 
场景:
    DRSD的建表结构是分库分表的,将C_CITY_INFO_FLOW表数据更新到C_CITY_INFO
    分库分表两张表where条件后面,需要分库键相等,目前drds支持这种情况。
1.C_CITY_INFO建表语句

CREATE TABLE `C_CITY_INFO` (`CITY_ID` BIGINT(16) NOT NULL,`CITY_NAME` VARCHAR(16) COLLATE utf8_bin DEFAULT NULL,`CITY_NO` BIGINT(16) NOT NULL,`CITY_AREA` VARCHAR(16) COLLATE utf8_bin DEFAULT NULL,`SPLIT_NO` VARCHAR(32) COLLATE utf8_bin DEFAULT NULL,`INSERT_TIME` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,PRIMARY KEY (`CITY_ID`)
) ENGINE=INNODB DEFAULT CHARSET=UTF8 COLLATE=utf8_bin DBPARTITION BY HASH(`SPLIT_NO`)

2.C_CITY_INFO_FLOW建表语句

CREATE TABLE `C_CITY_INFO_FLOW` (`ID` BIGINT(16) NOT NULL AUTO_INCREMENT BY SIMPLE   ,`CITY_ID` BIGINT(16) NOT NULL,`CITY_NAME` VARCHAR(16) COLLATE utf8_bin DEFAULT NULL,`CITY_NO` BIGINT(16) NOT NULL,`CITY_AREA` VARCHAR(16) COLLATE utf8_bin DEFAULT NULL,`SPLIT_NO` VARCHAR(32) COLLATE utf8_bin DEFAULT NULL  ,`FLOW_NO` VARCHAR(32) COLLATE utf8_bin DEFAULT NULL   ,`INSERT_TIME` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,PRIMARY KEY (`CITY_ID`)
) ENGINE=INNODB DEFAULT CHARSET=UTF8 COLLATE=utf8_bin  DBPARTITION BY HASH(`SPLIT_NO`)

3.以上两张表是字段SPLIT_NO来分库
4.UPDATE语句如下:

UPDATEC_CITY_INFO A,C_CITY_INFO_FLOW B
SETA.CITY_ID= B.CITY_ID,A.CITY_NAME = B.CITY_NAME,A.CITY_NO = B.CITY_NO,A.CITY_AREA = B.CITY_AREA,A.INSERT_TIME = B.INSERT_TIME
WHERE A.CITY_ID = B.CITY_IDAND A.split_no ='562'AND B.split_no='562'AND B.FLOW_NO = '1234'AND B.CITY_NO IN (123,456,789)

以上,TKS.

drds的update使用相关推荐

  1. drds 解决问题_DRDS 错误代码如何解决?-问答-阿里云开发者社区-阿里云

    DRDS 错误代码如何解决? 猫饭先生 2017-10-30 14:19:20 13731 本文档列出了 DRDS 返回的常见错误码及解决方法. TDDL-4006 ERR_TABLE_NOT_EXI ...

  2. DRDS SQL 审计与分析——全面洞察 SQL 之利器

    背景 数据库存储着系统的核心数据,其安全方面的问题在传统环境中已经成为泄漏和被篡改的重要根源.而在云端,数据库所面临的威胁被进一步的放大.因此,对云数据库的操作行为尤其是全量 SQL 执行记录的审计日 ...

  3. DRDS分布式SQL引擎—执行计划介绍

    摘要: 本文着重介绍 DRDS 执行计划中各个操作符的含义,以便用户通过查询计划了解 SQL 执行流程,从而有针对性的调优 SQL. DRDS分布式SQL引擎 - 执行计划介绍 前言 数据库系统中,执 ...

  4. 阿里DRDS基本原理

    DRDS 分库分表 DRDS 在后端将数据量较大的数据表水平拆分到后端的每个 RDS 数据库中,这些拆分到 RDS 中的数据库被称为分库,分库中的表称为分表. 拆分后,每个分库负责每一份数据的读写操作 ...

  5. DRDS 数据恢复重磅发布 全方位保障数据安全

    2019独角兽企业重金招聘Python工程师标准>>> 背景介绍 数据库存储着企业的核心数据,在企业中占据非常重要的位置,一旦出现SQL注入,数据误删的情况,影响的不仅仅是业务,还会 ...

  6. 使用JPA进行Update操作 @Query注解的用法,JPL

    使用jpa进行update操作有两种,第一种就是先查询,set,再进行save更新.这种做法过于繁杂,我只是要进行一个更新操作却变成了三步,所以我推荐使用第二种: @Modifying @Query( ...

  7. 使用JPA进行update操作时,报org.springframework.beans.factory.BeanCreationException: Error creating bean with

    使用JPA进行update操作时,报org.springframework.beans.factory.BeanCreationException: Error creating bean with ...

  8. SVN用法大全,SVN除了update、commit还有什么

    svn除了大家都知道的update.commit以外还有什么常用功能呢? 点击TortoiseSVN后,出现了右图的列表,这其中有哪些是常用的功能呢?最近在家办公,有些东西要svn操作,就了解了下. ...

  9. MySql数据库Update批量更新与批量更新多条记录的不同值实现方法

    批量更新 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other ...

最新文章

  1. 【linux】Linux kernel uapi header file(用户态头文件)
  2. android.os.NetworkOnMainThreadException
  3. Linux 防火墙开放特定端口 (iptables)
  4. 用java编写计时器_JAVA编写计时器
  5. 征战蓝桥 —— 2013年第四届 —— C/C++A组第9题——剪格子
  6. WordPress Restful API registration to Kyma WordPress API注册到Kyma的实现原理
  7. java面试题41 下面字段声明中哪一个在interface主体内是合法的? ()
  8. eq值 推荐算法_C++实现十种排序算法
  9. 【进阶技术】一篇文章搞掂:OAuth2
  10. 关于返回二维数组排序后序号数组的问题求解
  11. 重庆自考学历计算机应用基础考试,2017年自考计算机应用基础模拟试题1
  12. 风控中英文术语手册(银行_消费金融信贷业务)
  13. WPS 2005看起来还是蛮不错的
  14. Oauth认证-新浪微博开发(上)
  15. 虚拟机连接本地数据库
  16. 物联网卡与普通的sim卡的区别
  17. 机器学习之先验分布,后验分布,共轭先验分布
  18. hdu4966 朱刘算法
  19. java创建byte数组_java.创建一个byte数组,long length = file.length(); byte[] bytes =
  20. 断食3天能重启免疫系统?坚持断食的人,身体都怎么样了?

热门文章

  1. SAP采购计划协议计划数量小于收货或发票数量的案例分析
  2. Python进阶系列 - 20讲 with ... as:
  3. maven配置项目根路径_Maven 基本概念——根目录、项目创建、坐标
  4. 遥感影像镶嵌拼接如何抠图及多源影像补图,如何进行区域替换去云异常区域
  5. 求具体方程的解的c语言程序,怎样用c语言求方程的解
  6. 逃离996的最强出路!
  7. js图片切换(点击左右按钮,小圆点切换图片,自动轮播)
  8. 计算机科学与技术高中选课,高中选课哪些组合最好
  9. 基于Linux的kfifo移植到STM32(支持os的互斥访问)
  10. 深度学习案例2:AlexNet网络识别14种鲜花