当前位置: 首页 > 面试题库 >

MySQL-如何在INSERT语句中将字符串值解析为DATETIME格式?

梁锋
2023-03-14
问题内容

我有一个MySQL database带有日期类型的列DATETIME

我从外部应用程序获取日期/时间的字符串值。该字符串值如下所示:

'5/15/2012 8:06:26 AM'

MySQL在INSERT上引发错误:"Error. Incorrect datetime value"。我的解决方法是将列类型更改为VARCHAR,但可以,但是我确实需要数据作为适当的日期和时间以备将来使用。

我研究了MySQL DATETIME值的可接受格式,发现MySQL想要的DATETIME格式为'YYYY-MM-DD HH:MM:SS'

我无法更改外部应用程序以将日期/时间字符串重新格式化为格式,所以我唯一的机会就是处理它。

我想我需要做的是MySQL syntax在我的INSERT语句中使用来解析现有的字符串,但是我不确定该怎么做。我有一个想法,我可能需要以某种方式与我的INSERT语句结合使用SELECT子句STR_TO_DATE

这是我当前的INSERT语句。我删除了其他不会引起问题的字段,只是为了使示例更简洁。

INSERT INTO tblInquiry (fldInquiryReceivedDateTime) VALUES ('5/15/2012 8:06:26')

谢谢您的帮助,我是SQL新手。


问题答案:

使用MySQL的STR_TO_DATE()函数来解析您要插入的字符串:

INSERT INTO tblInquiry (fldInquiryReceivedDateTime) VALUES
  (STR_TO_DATE('5/15/2012 8:06:26 AM', '%c/%e/%Y %r'))


 类似资料:
  • 我如何能使这工作? 它会给出以下错误: "无效的日期格式31.01.2020 00:00:00"

  • 我正在尝试使用DateTime.parse()函数将String变量转换为DateTime。我以这种格式“00:00:00”获取变量中的字符串。但是当parse函数在其上运行时,它说它是无效的日期格式。

  • 问题内容: 有谁知道如何解析所需格式的日期字符串? 问题答案: 看到: Mozilla Core JavaScript参考:Date对象 Mozilla核心JavaScript参考:String.Split 码:

  • 问题内容: 我有一个格式的字符串时间。我没有找到任何格式来解析此字符串值。有什么办法可以将此字符串值转换为 Gotime.Time吗? 编辑-这不是重复的问题。我知道如何解析,但是我没有意识到我们可以使用除时间格式包中所列之外的任何布局。这个答案消除了我的疑惑。 问题答案: 这是完全,所以使用格式字符串(布局)。 例: 输出(在Go Playground上尝试): 引自以下文档的文档: 解析解析一

  • 问题内容: 我试图解析一个字符串,以分隔字符串中的列表。我目前有字符串: 有什么方法可以解析字符串,以便字典键是列表的第一个元素,而键的值是元素的下一个。例如: 问题答案: insted的的,你可以有列表: 您可以使用从字符串解析Python数据结构

  • 问题内容: 我有这个字符串:10,692,467,440,017.120(是一个数字)。 我想将其解析为BigDecimal。问题是我没有尝试过DecimalFormat和NumbeFormat。有什么帮助吗? 问题答案: 试试这个 如果要构建具有I18N支持的应用程序,则应使用 还请记住,它可能会引发a,因此您需要处理它(使用try / catch)或引发它,然后让程序的另一部分处理它