0

所以我试图只从数据库中检索日期,但它总是随着时间而来,我不知道为什么,但我数据库中该字段的数据类型是日期。现在,如何检索只有日期的数据。

这是我的代码:

            Dim strA As String = ddlSChedName.SelectedValue.ToString()
            sqlcon = New SqlConnection(conString)
            sqlcon.Open()
            Dim cmd As SqlCommand = New SqlCommand("SELECT * FROM dbo.CS_refSched WHERE
            SchedID=" + strA + "", sqlcon)
            Dim ds As New DataSet
            Dim da As New SqlDataAdapter
            Dim dt As New DataTable
            da.SelectCommand = cmd
            da.Fill(ds)
            dt = ds.Tables(0)
            sqlcon.Close()

            Dim a1 As String = dt.Rows(0)("From").ToString()
            Dim b As String = dt.Rows(0)("To").ToString()
            Dim c As String = dt.Rows(0)("SetID").ToString()
4

5 回答 5

3

使用DateTime.ToShortDateString()它将尊重您的文化/地区。

于 2013-08-13T03:19:33.853 回答
2

一种方法是转换日期(我假设是“To”和“From”)并将它们输出为仅包含日期的字符串

Dim strA As String = ddlSChedName.SelectedValue.ToString()
sqlcon = New SqlConnection(conString)
sqlcon.Open()
Dim cmd As SqlCommand = New SqlCommand("SELECT * FROM dbo.CS_refSched WHERE SchedID=" + strA + "", sqlcon)
Dim ds As New DataSet
Dim da As New SqlDataAdapter
Dim dt As New DataTable
da.SelectCommand = cmd
da.Fill(ds)
dt = ds.Tables(0)
sqlcon.Close()

Dim a1 As String = cDate(dt.Rows(0)("From")).ToString("d")
Dim b As String = cDate(dt.Rows(0)("To")).ToString("d")
Dim c As String = dt.Rows(0)("SetID").ToString()
于 2013-08-13T03:10:32.017 回答
0

要仅在 sql server 中存储日期,请创建您自己的数据类型

create type Date from dateTime

仅在 sql server 的列中插入日期

于 2013-08-13T07:06:28.257 回答
0

你也可以用它来检索

date.toString("MM/dd/yyyy")
于 2013-08-13T06:38:25.857 回答
0

Dim a1 As String = cDate(dt.Rows(0)("From")).ToString("d").Substring(0,10)

于 2013-08-13T06:55:02.867 回答