【发布时间】:2014-07-05 21:11:55
【问题描述】:
我有一个组合框,其中包含 01-12(月)的项目,根据选定的月份,数据是从 datagridview 中的数据库中提取的。然后将选定的值(月份)放入 label5。
在日期之间选择可以正常工作,但如何选择 1 个月内的所有天而无需为每个月定义天数范围(因为有些年份在 2 月有 29 天,所以这是行不通的)。
我已经尝试过了(我已将 31 天结束范围以涵盖任何一个月中的所有天,但这导致了错误,因为 Label5.text = "02" 并且 VB.NET 不知何故知道没有 31二月天数:
Dim SQLString As String = "SELECT KONTO, NALOG, DUGUJE, POTRAZUJE,
DATPRO, OPIS
FROM PROMGL WHERE DATPRO between #" & Label5.Text & "/1/2014# and #"
& Label5.Text & "/31/2014#"
我能做什么?
【问题讨论】:
-
为什么不使用 DateTimePicker 以确保数据值始终正确?您还应该使用参数化查询
-
我只需要整个月的数据,选择日期会使事情变得复杂,无论如何,在这种情况下,我可以使用两个蒙面的文本框作为日期,但我确实需要通过选择月份来显示数据。附言我找到了一篇关于参数化查询的文章,但这对我来说太复杂了(我是编程初学者)。
-
然后使用范围为 1-12 的 NumericUpDown,但从结果中创建实际日期以用作参数。例如:对于 EndDate,从 5/1 的 DATE 开始,然后备份/减去一天以获得 4 月的最后一天