• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

c#实现按日期查询

weixin_50199980 2020-11-23 01:33:19
我想根据日期查询数据库的数据(七个表),使用了DataTimePicker控件,查询后显示到DataGridView中。表中的数据为datatime字段,精确到时分秒,想要的效果是根据开始时间和结束时间,可以查询以年月日的记录。我的语句是string sql = string,Format("select * FROM X WHERE Starttime = '{0}' and endtime = '{1}',datatimepickerstatr.value,datatimepickerend.value");sql语句应该需要转换格式,不知道怎么弄,希望各位帮忙解答!谢谢
...全文
3466 点赞 收藏 10
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_50199980 2020-11-25
大神们的回复都有帮助,想请教一下我要把这个按日期查出来的数据导出生成到excel文档中,然后导出时可以选择目标路径的功能我要怎么弄??
回复
datafansbj 2020-11-24
说过很多次了,不要在代码里拼接 SQL,使用参数化查询才是正规的做法,可以避开很多问题。
回复
生财 2020-11-24
你是用的什么数据库? oracle 需要进行数据类型转换 to_date(’2003-10-17 00:00:00’,’yyyy-mm-dd hh24:mi:ss’) 如果是SQL Server 直接 string.Format("select * from 表 where createtime > '{0}'",beginTime.ToString("yyyy-MM-dd")) 时间DateTime格式化方法 .ToString("yyyy-MM-dd")
回复
正怒月神 2020-11-24
如果只是根据年月日查询。 那么就直接取datetime的年月日
string beginTime=DateTime.Now.ToShortDateString();
string sql=string.Format("select * from 表 where createtime > '{0}'",beginTime);
回复
引用 7 楼 datafansbj 的回复:
说过很多次了,不要在代码里拼接 SQL,使用参数化查询才是正规的做法,可以避开很多问题。
拼接也没事, 处理好SQL注入问题就好了。 最好的还是存储过程。
回复
这个没办法教, 这个死最简单的调试, 取出SQL语句 拿到数据库执行。 一下就知道问题所在,
回复
泡泡鱼_ 2020-11-24
SQL查询可以这样拼接的么……就算要这样拼接,至少也要做安全校验吧。
回复
w123wxh 2020-11-23
datatimepickerstatr.value.tostring("yyyy-MM-dd 00:00:00")和datatimepickerend.value.tostring("yyyy-MM-dd 23:59:59"),把日期格式改格式化一下,从0点开始查
回复
ziqi0716 2020-11-23
你把这个sql打印出来看下结果,然后把这个sql语句复制下,拿到数据库客户端软件里面测试下
回复
先把你的sql字符串打印出来,然后在sql中执行这个字符串,看看报啥错误,然后在修正就ok了,这个是调试的基本技巧。
回复
相关推荐
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2020-11-23 01:33
社区公告

让您成为最强悍的C#开发者