开发者社区 > 数据库 > 数据仓库 > 正文

ADB MySQL湖仓版可以设置如果datetime 类型的字段 如果格式非法 自动置空不?

ADB MySQL湖仓版可以设置如果datetime 类型的字段 如果格式非法 自动置空不?lQLPJxDsrlT8_azNAsjNBWOwDJBUg_VSlfgFGllgXADSAA_1379_712.png
目前用都DTS 同步数据到 ADB 有个别数据有问题 导致无法入库 。数据源暂时不太好解决 是否有办法在ADB里直接设置下 数据格式错误的 直接设置成null ?

展开
收起
三分钟热度的鱼 2023-10-18 22:23:48 84 0
1 条回答
写回答
取消 提交回答
  • 对于MySQL数据库,你可以通过修改数据的默认值来解决这个问题。具体来说,你可以创建一个触发器,当插入的数据的日期格式不正确时,将这个字段的值设为NULL。以下是一个示例:

    CREATE TRIGGER check_date_format
    BEFORE INSERT ON your_table
    FOR EACH ROW
    BEGIN
      IF (NOT REGEXP_LIKE(NEW.your_column, '^\d{4}-\d{2}-\d{2}$')) THEN
        SET NEW.your_column = NULL;
      END IF;
    END;
    

    在这个触发器中,我们检查新插入的数据的日期格式是否正确。如果不正确,我们将这个字段的值设为NULL。

    2023-10-19 13:56:59
    赞同 展开评论 打赏

相关产品

  • 云原生数据仓库AnalyticDB MySQL版
  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 热门讨论

    热门文章

    相关电子书

    更多
    消电行业数据中台解决方案白皮书 立即下载
    (终极版)2020阿里云金融数据中台报告 立即下载
    2020年中国乳制品行业数据中台研究报告 立即下载

    相关镜像