sql >> データベース >  >> RDS >> Mysql

不正なDateTime値'0000-00-0000:00:00'-Date_Sub()in Have

    最初のオプション:

    この警告は、おそらくSQL_MODEが原因である可能性があります 。

    mysqlのドキュメントによると、「NO_ZERO_DATEまたはNO_ZERO_IN_DATE SQLモードが有効になっている場合、ゼロの日付または日付の一部は許可されません。」したがって、これがINSERTの原因である可能性があります '0000-00-0000:00:00'で失敗します。

    これを実行すると、SQLモードを確認できます:

    SELECT @@sql_mode;
    

    NO_ZERO_DATEのいずれか またはNO_ZERO_IN_DATE が設定されたら、次のことができます:

    SET sql_mode = '';
    

    2番目のオプション

    もう1つのオプションは、STRICT_TRANS_TABLESが原因で失敗していることです。 モード。mysqlのドキュメントにあるように:

    同じことが日時にも当てはまります。

    したがって、STRICTMODEまたはを無効にする必要があります 無効にすることがオプションではない場合-無効な日付/日時の結果を返さないようにクエリを変更します



    1. AWSAuroraインスタンスの書き込みパフォーマンスを最適化する

    2. テーブル名のパターンは、JavaではNULLまたは空にすることはできません

    3. MySQLでのバルク挿入の問題

    4. 更新:バグによりMicrosoftOffice365ビルド2105がアクセスアプリケーションを中断する