我向实现一个日期型字段的模糊查询,写的部分代码如下:
if (FieldType1 == "DATE")
{
conditionValue1 ="'%" + textBox1.Text.Trim() + "%'";
}
swhere = "where " + FieldName1 + " " + comparel1 + " " + conditionValue1 + " ";
这里的FieldName1 选为InputDateTime,comparel1为like Sql = "select ProductID as 产品图号,PlaneType as 所属机型,InputUserID as 录入者,InputDateTime as 录入时间,tubeNo as 导管编号 from SampleTubes "
+ swhere;我在前台界面上输入2008-6-10或者2008年6月10日,执行查询显示没有结果(可是数据库中明明有这个数据的)
请大家快帮忙想想,谢谢!
if (FieldType1 == "DATE")
{
conditionValue1 ="'%" + textBox1.Text.Trim() + "%'";
}
swhere = "where " + FieldName1 + " " + comparel1 + " " + conditionValue1 + " ";
这里的FieldName1 选为InputDateTime,comparel1为like Sql = "select ProductID as 产品图号,PlaneType as 所属机型,InputUserID as 录入者,InputDateTime as 录入时间,tubeNo as 导管编号 from SampleTubes "
+ swhere;我在前台界面上输入2008-6-10或者2008年6月10日,执行查询显示没有结果(可是数据库中明明有这个数据的)
请大家快帮忙想想,谢谢!
解决方案 »
- C++是语言,QT是框架.C#应该叫啥?语言又框架?
- C#读取一个二进制文件(如可运行的exe)到文本框中,结果都是0和1的字符串吗?
- oledbdataadapter fill() 问题
- c# 操作word 替换文字内容 遇到一个奇怪的问题。请大家帮忙
- 如何改变listview选择项
- 调用COM组件后,程序响应异常缓慢,甚至执行不下去
- 求命:serialport类的问题读数据程序就无响应?
- access 数据库连接问题
- 快去微软件聊天室了,开聊了。
- 高手助我:初学者的问题,继承COMBOBOX类后,我可以不用基类提供的OnPaint方法吗?
- 求一方法完成ENTITY与Dicncy之间的转换,在线等!
- 关于桌面程序使用资源优化的问题
方法1、改变数据库结构,在日期不要求精确到时分时,将日期字段类型修改为Char(8),便于以后的数据查找
方法2、将日期字段使用To_char()函数转换,但这会影响查询速度
我把代码改为:
conditionValue1 =To_char(" & textBox1.Text&","yyyy-mm-dd");
执行后出现错误:上下文中不存在 To_char,这是在怎么回事,是不是要在上面引用什么类还是?
不明白,请大家快来帮忙呀!
然后查询数据库的时候用DateTime类型,例如:DateTime dDate = new DateTime(ddlYear.SelectedValue, ddlMonth.SelectedValue, ddlDay.SelectedValue);conditionValue1 = "'" + dDate.Tostring().Trim() + "'";这样应该就可以了。
*****************************************************************************
http://www.wbxonline.net/blog/
C_DATE
------------
2009-5-3 13:25:53
2009-5-4 13:28:53
2009-5-5 13:25:53
--------
需要查询条件中查找 2009-5-4日录入的where to_char(C_Date,'yyyyMMdd')='20090504';
你好,麻烦说的再具体些好吗?谢谢了
string sql = "Select id From SecUser Where CreateDateTime = to_date(" + "'" + DateTime.Now.Date.ToString() + "','yyyy-mm-dd hh24:mi:ss')";
select * from tb_1 t where t.InfoDate >= to_date('?','YYYY-MM-DD') and t.InfoDate <= to_date('?','YYYY-MM-DD')上面的问号是这样的,第一个问号是起始日期,后面一个问号是结束日期。目的是查询两个日期间的记录当然如果输出的话,我可以告诉你在DataTable中,InfoDate列式DateTime类型。"?"是什么?很简单,你可以通过oledb的parameters提交开始日期和结束日期。两个日期的顺序不要搞错。先绑定开始,后绑定结束。
如果你是两个DateTime参数的话,可以这么写。
Date1.toString("yyyy-mm-dd"); //输出的就是一个标准的yyyy-mm-dd格式作为参数传递给上面的sql中。另外一个日期一样处理。