使用Vb.NET更新命令在MS Access中更新DATE

时间:2015-07-10 17:12:28

标签: vb.net date

您好我想使用Vb.NET更新命令在MS Access中更新DATE。我使用日期选择工具和数据类型的日期是日期/时间。我使用调试,一切都变得完美,但当我检查更新日期和月份仍然正确,我选择但年份更改为1894 .... 代码是:

Dim dt As String
dt = Format(Dtp1.Value, "dd-MM-yyyy")
Cmd.Parameters.Clear()
Cmd.CommandText = "update tran set expdate=" & dt & " where trno=" & TxtMTrNo.Text.Trim
Cmd.ExecuteNonQuery()
LoadProducts()

TxtMTrNo.Text = ""
TxtMProduct.Text = ""
TxtPQty.Text = ""
TxtSQty.Text = ""

MsgBox("Edited successfull")

2 个答案:

答案 0 :(得分:1)

不要使用字符串连接...这很容易出错(日期格式位置问题),并且容易受到SQL注入问题的影响。使用参数,如下所示:

Cmd.CommandText = "update tran set expdate=@pDate where .....
Cmd.Parameters.AddWithValue("@pDate ", ......
Cmd.ExecuteNonQuery()

答案 1 :(得分:0)

您需要将日期用单引号括起来:

Cmd.CommandText = "update tran set expdate='" & dt & "' where trno=" & TxtMTrNo.Text.Trim

否则它认为日期是数学表达式。