0

我有一个 asp.net 项目,我必须从用户那里获取输入并将其插入到我数据库中的日期属性中。但相反,我只有 0000/00/00。我不明白为什么。

输入来自 3 个文本框。比我连接它们并将其传递给查询。但是出了点问题。这是代码:

Bday = Month2.Text & "/" & Dates2.Text & "/" & years.Text
Dim StrQwery As String = "INSERT INTO account VALUES(accoint_id, '" & Bday &"')"
Dim smd As MySqlCommand = New MySqlCommand(stquery, myconn)
smd.ExecuteReader()

当我将时间添加到同一个字符串并希望将其传递给 dateTime 属性时,也会发生同样的事情。有人可以告诉我有什么问题吗?

regTime = Month2.Text & "/" & Dates2.Text & "/" & years.Text & CStr(TimeValue(CStr(Now)))
Dim StrQwery As String = "INSERT INTO account VALUES(accoint_id, '" & regTime &"')"
Dim smd As MySqlCommand = New MySqlCommand(stquery, myconn)
smd.ExecuteReader()
4

1 回答 1

0

MySQL 的 date-as-string 格式是yyyy-mm-hhand yyyy-mm-dd hh:mm:ssfor datetime。如果您插入任何其他内容,例如您的xxxx/xx/xx,MySQl 甚至不会尝试猜测它的格式,而只需插入 0000-00-00 来表示无效日期。

这不是你可以改变的。将您的日期转换为 MySQL 的标准格式,或处理后果。

于 2013-04-27T21:44:59.993 回答