我尝试使用 MySqlCommand
将日期添加到数据库中,但日期添加不正确。让我解释。我得到的实际日期是这样的:
Dim book_datetime = Date.Now.ToString("yyyy-MM-dd HH:mm:ss")
如您所见,我以这种格式解析日期:yyyy-MM-dd HH:mm:ss
一切都运行良好,但是当我在数据库中执行插入时,我得到:
2015-12-15
而不是这个
2015-12-15 11:48:30
这是我执行插入的代码:
query = "INSERT INTO setting (book_datetime)
VALUES(@book_datetimep)"
MySqlCommand = New MySqlCommand(query, dbCon)
MySqlCommand.Parameters.AddWithValue("@book_datetimep", book_datetime)
我的数据库book_datetime
包含一个Date
字段。怎么了?在我解析它之后,book_datetime
被正确填充,但是当它被插入到数据库中时,我得到另一种格式。我发现如果我将字段从 Date
更改为 Text
我会得到正确的格式,但为什么呢?
最佳答案
来自 MySQL 文档 here :
The DATE type is used for values with a date part but no time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.
The DATETIME type is used for values that contain both date and time parts. MySQL retrieves and displays DATETIME values in 'YYYY-MM-DD HH:MM:SS' format. The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.
使用 DATETIME
作为字段类型而不是 DATE
,并且日期的时间部分在插入时不会被截断。
关于mysql - 无法在数据库中添加日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34287269/