Как узнать время выполнения запроса на сервере

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
kozer
Сообщения: 6
Зарегистрирован: 04 дек 2007, 10:59

Как узнать время выполнения запроса на сервере

Сообщение kozer » 06 авг 2008, 18:44

Уважаемые
Как можно узнать время выполнения запроса на стороне сервера?

На клиенте процедура подсчета вида не будет корректной из-за возможной загрузки клиентского компа или вычисления в потоке:

var
StartTime, Total: longint;
begin
StartTime := GetTickCount;
//здесь происходит запрос
Total := GetTickCount - StartTime;
end;

Как реализовать получение информации на сервере?

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 06 авг 2008, 19:34

Ты не поверишь.

Код: Выделить всё

declare variable StartTime time;
declare variable Total: int; 
begin 
  StartTime = cast('NOW' as time); 
  //здесь происходит запрос 
  Total = (cast('NOW' as time) - StartTime)*1000; -- это чтоб милисекунды были
end

kozer
Сообщения: 6
Зарегистрирован: 04 дек 2007, 10:59

Сообщение kozer » 07 авг 2008, 13:39

WildSery, спасибо.

Ответить