传递日期作为Visual Basic中的查询参数

问题描述

| 我想在vb中传递一个日期作为参数来查询表中的数据。 如果我对查询中的值进行硬核化,那么它对我来说很好用,但是如果我将其作为参数传递给查询,就像我从编辑文本中获取数据并尝试将其作为参数发送一样,则此方法将不起作用。
SELECT * 
 FROM VehicleAnalogParamDownload2
 WHERE Vapd2_Date between \'From_date.Text\' And \'To_Date.Text\'
谢谢     

解决方法

        不要将值直接嵌入到SQL语句中。 请改用参数化查询。这样,您就不必担心日期/时间格式的不同,对于其他参数,您可以避免SQL注入攻击。您的SQL看起来像这样:
SELECT * FROM VehicleAnalogParamDownload2
WHERE Vapd2_Date between @FromDate And @ToDate
然后您将以编程方式填写
@FromDate
@ToDate
参数值。 有关示例,请参阅
SqlCommand.Parameters
的文档。     ,        在vb中
dim str as string

str=\"SELECT * FROM VehicleAnalogParamDownload2 WHERE Vapd2_Date between\" & 
     From_date.Text & \"\' And  \'\"& \'To_Date.Text\'\"