遇到问题与数据库
我无法插入到MySQL
数据表,使用C#
& ODBC
5.1插入日期。尝试写入DateTime
字段时,插入失败。 MySQL
表示DateTime
值的格式不正确。它表示我插入的值为:遇到问题与数据库
13-07-2012 13:46:21.000031000.
正如您所看到的,秒数有一串十进制数字。我无法弄清楚为什么要添加这些东西。如果我手动插入行(例如使用MySQL工作台),并提供一个值,如:
13-07-2012 13:46:21
MySQL
似乎不加小数点&插入成功完成。据我所知,DateTime
从C#
到ODBC
参数不包含这些小数,所以它似乎在MySQL
在某些点上的东西是添加它们!
我会使用MySQL的STR_TO_DATE功能的C#格式化的日期字符串转换为一个MySQL能够使用:
STR_TO_DATE("13-07-2012 13:46", "%d-%m-%Y %h:%i")
https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-date
嗨,ypercube感谢您的回复,错误消息是System.Data.Odbc.OdbcException:错误[HY000] [MySQL] [ODBC 5.1驱动程序] [ mysqld-5.1.63-community]日期时间值不正确:'2012-07-13 15:05:08.499000000'列'CreationDate'在第1行 – user1523606 2012-07-13 14:07:08
我想你会发现它的C#日期时间格式 – JamesHalsall 2012-07-13 13:02:47
使用预准备语句 – 2012-07-13 13:02:49
在MySQL中日期时间的正确格式是''2012-07-13 13:46:21'' – 2012-07-13 13:06:05