Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual Basic使用DateTimePicker确定SQL查询的日期_Sql_Vba_Datetimepicker - Fatal编程技术网

Visual Basic使用DateTimePicker确定SQL查询的日期

Visual Basic使用DateTimePicker确定SQL查询的日期,sql,vba,datetimepicker,Sql,Vba,Datetimepicker,我正在尝试使用datetimepicker来确定SQL查询的日期,但很难让查询运行。这是我的密码 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load DateTimePicker1.Value = DateTime.Now DateTimePicker2.Value = DateTime.Now End Sub Private Sub Button1_Click(sende

我正在尝试使用datetimepicker来确定SQL查询的日期,但很难让查询运行。这是我的密码

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    DateTimePicker1.Value = DateTime.Now
    DateTimePicker2.Value = DateTime.Now

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim date1 As String = DateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss")
    Dim date2 As String = DateTimePicker2.Value.ToString("yyyy-MM-dd HH:mm:ss")
    myLowerDate = "'" + Microsoft.VisualBasic.Left(date1, 19) + "'"
    myUpperDate = "'" + Microsoft.VisualBasic.Left(date2, 19) + "'"


Dim Query1 As String =
"SELECT DISTINCT 
'''' + d.ID + '''' AS DeliveryID,
l.Name AS LocationName

FROM 
Locations l JOIN Deliveries d
ON l.id = d.LocationID

JOIN DeliveryRecords dr 
ON d.ID = dr.DeliveryID

JOIN Items i 
ON dr.ItemID = i.ID
    WHERE 
        (l.OwnerUserID = 'aaaaa' OR l.OwnerUserID = 'bbbbb') AND
        l.Deleted is NULL AND
        ISNUMERIC(l.CustomID) = 1 AND
        dr.Created <= DATEADD(HOUR, 8, " + myUpperDate + ") AND 
        dr.Created >= DATEADD(HOUR, 8, " + myLowerDate + ")"

SQLCon.Open()

    Try

        SQLCmd = New SqlCommand(Query1, SQLCon)

        Dim R As SqlDataReader = SQLCmd.ExecuteReader

        While R.Read

            xName = R("Name").ToString
            xDate = R("Date").ToString
            xDueDate = R("DueDate").ToString
            xInvoiceNumber = R("InvoiceNumber").ToString

        End While

        SQLCon.Close()

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

当我运行这个程序时,由于我的SQL查询,我得到一个错误,但是当我用实际值替换变量时,它运行正常。有人能指出我做错了什么吗?

我刚刚知道我做错了什么。最后,我将查询设置为以日期为变量的函数,并将其插入到我的run query sub中。

您将日期存储为文本,这显然会在尝试将其用作日期时出错。尝试调试代码并查看差异。