两台server:
1.HP-UNIX+sybase 11.9
2.WIN2K+MS SQL 2K想要比较两台服务器的时间,我有如下代码,但有问题,请高手指点!
procedure FormMain.compare_twosystemtime;
var
datetime_hp,datetime_nt:TDateTime;
begin
datetime_hp:=now();
datetime_nt:=now(); with Queryhp do
begin
if active then close;
sql.Clear;
sql.add(' select getdate() ');
open;
datetime_hp:=Fields[0].AsDateTime;
end; with Querynt do
begin
if active then close;
sql.Clear;
sql.add(' select getdate() ');
open;
datetime_nt:=Fields[0].AsDateTime;
end; if abs(datetime_hp - datetime_nt)>300 then //差5分钟以上提示
begin
showmessage(‘.....’);
end;end;
1.HP-UNIX+sybase 11.9
2.WIN2K+MS SQL 2K想要比较两台服务器的时间,我有如下代码,但有问题,请高手指点!
procedure FormMain.compare_twosystemtime;
var
datetime_hp,datetime_nt:TDateTime;
begin
datetime_hp:=now();
datetime_nt:=now(); with Queryhp do
begin
if active then close;
sql.Clear;
sql.add(' select getdate() ');
open;
datetime_hp:=Fields[0].AsDateTime;
end; with Querynt do
begin
if active then close;
sql.Clear;
sql.add(' select getdate() ');
open;
datetime_nt:=Fields[0].AsDateTime;
end; if abs(datetime_hp - datetime_nt)>300 then //差5分钟以上提示
begin
showmessage(‘.....’);
end;end;
Delphi的程序没有问题,Sybase支持getdate()这个函数吗?
if abs(datetime_hp - datetime_nt)>300 then //差5分钟以上提示
其结果的整数部分是从12/30/1899到现在的天数,小数部分是对应当天的小时数,如0.5表示中午12点。你要比较的话,条件设为:
abs(datetime_hp - datetime_nt)>5.0/24*60