我虽没分但我讲义,绝不食言?请帮我最后一次

JZG 2001-06-26 03:17:08
JDWSJ:字段类型为DATETIME;
为什么两种写法执行返回结果值不一样呢你们知道吗?
1.VAR
A:STRING;
BEGIN
A:=‘SELECT * FROM YGDJ WHERE JDWSJ>:DD';
ADOQUERY1.CLOSE;
ADOQUERY1.SQL.CLEAR;
ADOQUERY1.SQL.ADD(A);
ADOQUERY1.PARAMETERS.PARAMYBAY('DD').VALUE:=EDIT1.TEXT;
ADOQUERY1.OPEN;
END;


2.VAR
A:STRING;
BEGIN
A:=‘SELECT * FROM YGDJ WHERE JDWSJ>'''+EDIT1.TEXT+'''';
ADOQUERY1.CLOSE;
ADOQUERY1.SQL.CLEAR;
ADOQUERY1.SQL.ADD(A);
ADOQUERY1.OPEN;
END;
...全文
195 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjqyb 2001-06-26
  • 打赏
  • 举报
回复
.VAR
A:STRING;
BEGIN
A:=‘SELECT * FROM YGDJ WHERE JDWSJ>:DD';
ADOQUERY1.CLOSE;
ADOQUERY1.SQL.CLEAR;
ADOQUERY1.SQL.ADD(A);
ADOQUERY1.PARAMETERS.PARAMYBAY('DD').Asdatetime:=strtodate(EDIT1.TEXT);//日期
或者
ADOQUERY1.PARAMETERS.PARAMYBAY('DD').Asdatetime:=strtodatetime(EDIT1.TEXT);// 日期+时间
若是paradox而且一定要用字符比较 的话
必须转成'mm/dd/yyyy'格式
ADOQUERY1.OPEN;
END;

hj_cn 2001-06-26
  • 打赏
  • 举报
回复
小弟也碰到这个问题我想采用第二种方法但不知道如何在代码中转换类型。
kuangning 2001-06-26
  • 打赏
  • 举报
回复
和david_ye(ye)一样
largewang 2001-06-26
  • 打赏
  • 举报
回复
要一致的话, 都转换成日期就行了
david_ye 2001-06-26
  • 打赏
  • 举报
回复
前者是把他当日期型处理
后者把他当整型处理.
liet 2001-06-26
  • 打赏
  • 举报
回复
类型都不一样,不能这么比较吧?
你把JDWSJ转成String试试呢?

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧