数据库中的某个字段为日期类型1,有很多数据例如:2003-11-12,2003-12-11等,现在我需要对数据进行审核,凡属于2003-12的数据(2003-12-11)可以保存,不属于的(2003-11-12)不能保存并提示。如何能提取出来数据进行判定呢?
begin
query1.Close;
query1.SQL.Clear;
query1.sql.Add('select c0 from rjz');
query1.open;
query1.First;
while not query1.eof do
begin
if query1.Fieldbyname('c0').Asstring <>'2003-12' then
//是具体日期可以,2003-12好象不行
begin
showmessage('日期不符,不能保存');
end;
query1.Next;
end;
begin
query1.Close;
query1.SQL.Clear;
query1.sql.Add('select c0 from rjz');
query1.open;
query1.First;
while not query1.eof do
begin
if query1.Fieldbyname('c0').Asstring <>'2003-12' then
//是具体日期可以,2003-12好象不行
begin
showmessage('日期不符,不能保存');
end;
query1.Next;
end;
解决方案 »
- 一个进销存数据结构流程求教
- 如何将四张图片合并成一张
- 关于Delphi WebService是否可以使用Delphi的网络组件如(TIdTCPServer, TSocketServer)与客户端通信并传输文件?
- 人不能没有理想,从今天起决定用D8写一个和CSDN类似的论坛,希望熟悉WEB编程的人来指教和交流!
- 初级问题,delphi里的COM对象和自动化对象到底有什么区别?
- 大家好,请教各位表与表之间相互关联的问题~~~~~~~~(分数可以加)
- 在DLL动态库中的函数如何实现多线程?
- dajiashuo
- 大家在Delphi中都怎么运用OO?
- 决心学习Delphi,请高手指点好的入门书籍和对初学者适用的网站,在线等
- 窗体在98和2000下大小出现不同,这是为什么?怎么处理
- 哪里有fastreport的中文说明书?
showmessage('日期不符,不能保存');
query1.Close;
query1.SQL.Clear;
query1.sql.Add('select c0 from rjz ');
query1.open;
query1.First;
while not query1.eof do
begin
if (copy(query1.Fieldbyname('c0').Asstring,1,4)+ copy(query1.Fieldbyname('c0').Asstring,5,7))<>'2003-12' then
begin
showmessage('日期不符,不能保存');
end;
query1.Next;
end;
如果在ORACLE中写。则:
STRSUB(query1.Fieldbyname('c0').Asstring,1,7)
DateUtilsfunction YearOf(const AValue: TDateTime): Word;
function MonthOf(const AValue: TDateTime): Word;
/////////////////////////////////////////////////
if (YearOf(datetime) = 2003) and (MonthOf(datetime) = 12) then