『Delphi』Delphi中按日期查询的解决办法

  Delphi中按日期查询的解决办法


时间:
2006.9.29    作者:Anytao

©2006 Anytao.com 转贴请注明出处,保留此信息

引言:

Delphi是开发桌面数据库程序最佳的选择之一,其快速的数据建模和集成数据开发控件,为数据库的开发提供了最佳的解决方案。

程序开发过程中,查询是数据库程序最基本的操作类型,以SELECT语句来实现是最好的方式,但是初级开发者常常在解决按日期查询的问题时,都会出现类型不匹配方面的异常问题,一时不得已解决。

基本信息

开发环境:Delphi工具,Object Pascal语言

技术要点:ADO数据操作,SQL查询

解决方案

可以有两种方案:

1 将日期转换为字符串型,确定是不能进行日期比较性的查询,比如要查询200691之前的内容时,这种方式就不可取。因此,我们关注的是不需要进行类型转换的实现方式。

2 不进行类型转换的日期查询办法。具体实现就以一个简单的例子为例吧。

   示例:查询今天之前交费的学生姓名。

 strSql:=Format('SELECT %S From % WHERE %s<%s',

                 ['Name','Student','JiaoFeiDate',

                 '#'+DateToStr(Now)+'#']);

 try

    ADOQuery.SQL.Add(strSql);

    ADOQuery.Open;

    ......

 except

    ......

 end; 

结束语

实现的重点就是在日期字段的前后加上'#'来处理。(红色标出)

注意,这里以Format函数来实现,可以很容易完成语句较负责的格式话输出,建议在程序中能常用。

希望各位博友,砖头与鸡蛋同在,我将努力在风雨中前行。                    Enjoy.

 

关于作者

数年学道,一朝醒悟,身于技术,心系天下。内专注于.NET,外切磋于Delphi,只身江湖于京城,志满筹。心若凭栏,以立业传道为己任;神思四海,为技术中华而躬身。

敬请关注Anytao.com。

 

©2006 Anytao.com 转贴请注明出处,保留此信息。

posted @   Anytao  阅读(3508)  评论(2编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示