Paradox 和 SQL 的问题? 哥们! 如果改好,还有点数! (50分)

B

bjwh

Unregistered / Unconfirmed
GUEST, unregistred user!
在Paradox 库中有如下字段 ,数据库名为 LEAVE.DB
NAME(A型,8位)
START_DATETIME(A型,16位)
END_DATETIME(A型,16位) 主要用作存贮 “2002-10-31 14:38”等类型的字符串

[blue]因为我要如下操做:[/blue]
Q_leave.ParamByName('Person').AsString:=person_id;
Q_leave.ParamByName('s_dt').AsDatetime:=late_time;
Q_leave.ParamByName('e_dt').AsDatetime:=early_time; //late_time 和early_time为TdateTime型
Q_leave.Prepare;
Q_leave.Open;

[blue]我的Query.SQL.Text中为:[/blue]
Select * from "d:/kqdb/leave.db"
WHERE PERSON=:pERSON
[red]AND TO_DATE(START_DATETIME,'YYYY-MM-DD HH24:MI:SS')>:S_DT [/red]
[red]AND TO_DATE(END_DATETIME,'YYYY-MM-DD HH24:MI:SS')<:E_DT [/red]
//主要问题在这里,运行不下去,怎么总显示 'Capability not supported'?

也可以换个思路
请高手指教! 调试成功还有点数!
 
还有日期的分隔符不一定是“-”,看一下控制面板
TO_DATE(START_DATETIME,'YYYY-MM-DD HH:mm:SS')>:S_DT
 
看什么控制面板,不明白?
 
to_date怎么好象是oracle的函数啊,paradox不支持吧
时间的比较可以用字符串做比较而不用datetime类型
 
雪中漫步那怎么办呀????
 
试试:
_leave.ParamByName('Person').AsString:=person_id;
Q_leave.ParamByName('s_dt').AsString:=formatdatetime('YYYY-MM-DD HH24:MI:SS',late_time);
Q_leave.ParamByName('e_dt').AsString:=formatdatetime('YYYY-MM-DD HH24:MI:SS',early_time); //late_time 和early_time为TdateTime型
Q_leave.Prepare;
Q_leave.Open;


Select * from "d:/kqdb/leave.db"
WHERE PERSON=:pERSON
AND START_DATETIME>:S_DT
AND END_DATETIME<:E_DT
 
楼上说得对
 
2002/01/30 12:20:11
 
同意 雪中漫步
 
字符串也能进行日期运算?
 
我碰到过一个类似的问题,后来发现是一个标点符号错了,把英文的 ,写成了全角的,
后来改了就好了,你查一下有没有这种情况
 
老兄,再多注册几个用户给自己送分啊,小心进黑名单。
 
顶部