AddWithValue包含需要“”的#

时间:2014-03-10 08:31:08

标签: c# vb.net

我的update_ckick事件中有一个sql update语句:

Dim tmp_date As Date
        Dim YearDateTime As New Nullable(Of Date)

        If Date.TryParse(txtStartDate.Text, tmp_date) Then
            YearDateTime = tmp_date
        Else
            YearDateTime = Nothing
        End If

Update Details set EMP_DateAppointedRank = @EMP_DateAppointedRank

UpdateEmp.Parameters.AddWithValue("EMP_DateAppointedRank", String2Date(YearDateTime))

这只是一个片段,当我单行Update Details set EMP_DateAppointedRank = @EMP_DateAppointedRank值显示#10/03/2014#时,会发生什么

我如何才能创造这个价值:10/03/2014没有#?

C#help也欢迎

1 个答案:

答案 0 :(得分:1)

我怀疑你错误地将视觉工作室调试器显示的内容与其实际含义有关。

#10/03/2014#Date literal in VB.NET。它只是意味着它的类型是Date(C#中的DateTime),它的值是10/03/2014

除此之外,如果使用MS-Sql-Server和@变量而不是Date,则必须在sql-parameter中添加String

If YearDateTime.HasValue Then
    UpdateEmp.Parameters.AddWithValue("@EMP_DateAppointedRank", YearDateTime.Value)
Else
     UpdateEmp.Parameters.AddWithValue("@EMP_DateAppointedRank", DBNull.Value)
End If