目前还没找到通过设置控件属性达到目的的方法,故在程序中设置。
当用到datetimepicker的值时:
将datatime类型的值转换string类型来大袋目的
string ks = dtp1.Value.ToString("yyyy-MM-dd 00:00:00");
string js = dtp1.Value.ToString("yyyy-MM-dd 23:59:59");
关于数据库中按时间查询的一些问题
个别查询方法是不需要考虑时间问题的,如查询当天的内容,可用如下查询条件
datediff('d',kssj,now())=0
其中,d代表日,kssj是数据库中时间字段的列名,new()是现在的时间
以下内容节选自:http://www.cnblogs.com/athrun/archive/2008/11/03/1325155.html
資料 Customer
aspx頁面查詢條件: 最小日期: [2007-01-06] 最大日期: [2007-01-06] 使用的 sql: SELECT ID, Name, RegisterDate 結果是傳回1筆:丁丁, 符合我的預期 但是 如果丁丁的RegisterDate 的時間 不是00:00:00呢? 如果資料是這樣
一樣的sql SELECT ID, Name, RegisterDate 傳回來的是0筆
嗯,因為我沒有給予正確的時間範圍嘛,我的查詢條件應該是2007/1/6 號整天時間範圍。 所以我通常程式在查詢前,都會先幫日期加1天 RegisterMaxDate = RegisterMaxDate.AddDays(1); 但是,這樣就對了嗎?? 這樣的程式產生的sql是 SELECT ID, Name, RegisterDate 反而傳回2筆,把亞亞也傳回來了 因為 Sql 的 between min And max 是 value >=min && value <= max 的意思 所以我應該更精確的 RegisterMaxDate = RegisterMaxDate.AddDays(1).AddSeconds(-1); 那樣產生的sql 才會是 SELECT ID, Name, RegisterDate 傳回1筆,也就是丁丁,我要的資料。 |