【问题标题】:MySQL: Error Code: 1411. Incorrect datetime value: '24102018915G' for function str_to_date 0.000 secMySQL:错误代码:1411。日期时间值不正确:函数 str_to_date 0.000 秒的“24102018915G”
【发布时间】:2018-10-26 21:11:09
【问题描述】:

我正在尝试做一些逆向工程,以下 SQL 是一个工作版本。我正在尝试创建临时数据库,但插入语句失败。

知道我需要检查哪些参数才能使其在临时数据库中工作吗??

INSERT INTO 
SECURITY_STAGING (INSERT_TYPE, ADDED_DTTM, SECURITY_CODE, SECURITY_NAME, SECURITY_GROUP, LAST_TRADED_PRICE, CHANGE_AMT, CHANGE_PER)  
VALUES ('GAINER',STR_TO_DATE('24102018915G','%d%m%Y%H%i'),'532524','PTC','A','78.00','3.10','4.14') 

错误代码:1411。不正确的日期时间值:“24102018915G” 函数 str_to_date 0.000 秒

【问题讨论】:

  • 你如何得到'24102018915G'的日期时间?错误很清楚导致错误的原因。
  • 您确定字符串的“g”字母吗?
  • 24102018915G 是从根据日期戳生成的文件名中提取的...似乎缺少时间的前导 0。

标签: mysql


【解决方案1】:

这会产生一个有效的时间戳:

select STR_TO_DATE('241020180915','%d%m%Y%H%i')

这不是

select STR_TO_DATE('24102018915G','%d%m%Y%H%i')

你漏掉了一个零,取而代之的是一个 G。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-15
    • 1970-01-01
    • 2017-09-17
    • 2012-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    相关资源
    最近更新 更多