zoukankan      html  css  js  c++  java
  • zeroDateTimeBehavior=convertToNull

    针对下面这个,我认为这样做是可取的:

    3)每一个字段尽量设置不可为空,对于有些业务比方订单的出仓时间确实须要等到出仓扫描时才有值的能够同意为空;



    供參考的解决方式:

    所有字段都设置为not null,

    int ,date,datetime,timestamp类型都能够default 0 


    orm层配置添加例如以下:

    zeroDateTimeBehavior=convertToNull



    这样代码层面无需不论什么修改。()

    一来兼顾db层面的优化。数据量大并发时,这样的抠门是可取的。

    二来兼顾tms业务.


    时间紧迫。可针对大表。






    ps:

    set datetime = null 它会清到 0.,,是的,。,但不能 统一标准啊。

    把全部 time 有关的改成not null default 0 .. 代码 把UPDATE seq_rule SET test_date=null 改成 UPDATE seq_rule SET test_date=0   能够

    这种话。。就能够统一全部time类型

    单是db层面的话
    timestamp类型 + not null default 0 . + UPDATE seq_rule SET test_date=0
    能够解决  ,java层面?


    others:

    set timestamp = null .  timestamp会自己主动刷到当前时间, 无论你是否default 0.

    set timestamp = 0 .   timestamp才会刷到'0000-00-00 00:00:00', 无论你是否default 0.








    也能够jdbc层面:

    String url = "jdbc:mysql://10.149.51.80:3306/test?relaxAutoCommit=true&zeroDateTimeBehavior=convertToNull";








  • 相关阅读:
    理解和应用队列机制
    Visual Studio for Mac第四预
    宇宙第一开发工具
    Visual Studio 2017
    Vue开源
    Redux 和 ngrx 创建更佳的 Angular 2
    Redis缓存用起来
    C#6
    spring声明式事务 同一类内方法调用事务失效
    Spring事务管理--多个ORM框架在使用时的情况分析
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/6939580.html
Copyright © 2011-2022 走看看