【问题标题】:Mysql error: Warning: #1265 Data truncated for column 'empatt_date' at row 1Mysql 错误:警告:#1265 第 1 行的列 'empatt_date' 的数据被截断
【发布时间】:2019-05-21 04:26:25
【问题描述】:

我正在尝试使用 Jalili 日期选择器保存 Shamsi 日期。 它正确插入所有没有(29、30 和 31)的日期。 但是mysql给了我以下错误:

警告:#1265 第 1 行的列“att_date”的数据被截断

我使用的日期格式是:(1398-02-29, 1398/02/29)

【问题讨论】:

  • 您显示的不是日期格式。这是不同格式的两个日期
  • att_date的数据类型是什么?
  • 是的,我知道。这是我尝试过的不同格式,但没有一个有效。而 att_date 类型只有“日期”。

标签: mysql database date


【解决方案1】:

由于您的日期格式不是 MySQL 标准格式。您需要将 sql 模式更改为 ALLOW_INVALID_DATES。 所以它只会检查月份是否在 1 到 12 的范围内,而日期是否在 1 到 31 的范围内。

添加MySQL文档的链接

https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html#sqlmode_allow_invalid_dates

【讨论】:

  • 您可以对答案进行投票。以便对其他人有用。
【解决方案2】:

除了@james 解决方案之外,将回历中的日期保存在数据库中并不是最佳做法,因为它会降低应用程序的可移植性和兼容性。最好将所有日期保存在公历中,并使用一些转换器库将其更改为您需要的任何日期。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-28
    • 2017-12-14
    • 2019-11-17
    • 1970-01-01
    • 1970-01-01
    • 2018-06-08
    • 2022-07-27
    • 1970-01-01
    相关资源
    最近更新 更多