无法在 MariaDB 中插入查询

Posted

技术标签:

【中文标题】无法在 MariaDB 中插入查询【英文标题】:unable to insert query in MariaDB 【发布时间】:2021-03-15 10:27:46 【问题描述】:

我正在尝试插入一个查询: insert into Table(ID,Value,Date) Values('Test1', '33', '20210315 11:15:27.059') 使用 ODBC 驱动程序(Maria 3.1)到 MariaDB,但我有这个错误:

异常消息:错误 [22007] [ma-3.1.11][10.2.15-MariaDB]不正确的日期时间值:'20210315 11:15:27.059' for column 'date' at row 1 我认为这种格式 MariaDB 不支持“20210315 11:15:27.059”。

请您帮我更改数据库中的时间格式。

谢谢。

【问题讨论】:

【参考方案1】:

我忘记了哪些格式可以作为日期/时间戳文字的确切规则。但是,我确信以下格式是可以接受的:

2021-03-15 11:15:27.059

您更新的代码:

INSERT INTO yourTable (ID, Value, Date)
VALUES ('Test1', '33', '2021-03-15 11:15:27.059');

Demo

【讨论】:

谢谢,但我需要这种格式 20210315 11:15:27.059 有没有办法从数据库中更改日期格式以支持它? @happy 日期/时间戳没有内部“格式”,它们以二进制形式存储。如果您想以这种方式查看您的时间戳,请使用带有您想要的掩码的DATE_FORMAT 函数。 您能帮我了解如何使用 DATE_FORMAT 函数吗? 我执行了它但我有这个错误:/* SQL 错误(1064):你的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以了解在 'DATE_FORMAT(2021031015 11:46:23.320, '%Y-%m-%d %H:%i:%s.%f')' 附近使用的正确语法在第 1 行 /DATE_FORMAT(DATE, '%Y-%m-%d %H:%i:%s.%f'); / SQL 错误 (1064):您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在第 1 行的 'DATE_FORMAT(DATE, '%Y-%m-%d %H:%i:%s.%f')' 附近使用正确的语法 */ @happy Check the demo

以上是关于无法在 MariaDB 中插入查询的主要内容,如果未能解决你的问题,请参考以下文章

使用重复键更新在 MariaDB 中批量插入

MariaDB中日期范围和时间范围之间的SQL查询

如何在不截断的情况下将长字符串插入 MariaDB 的 LONGTEXT 列?

在 NodeJs 中使用 async await 和 mariadb 查询的正确方法是啥?

列未显示在 PHP 查询中,但显示在 MariaDB 的 phpmyadmin 界面中

无法从 information_schema (MySQL/MariaDB) 访问列名