Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO [D5, MSSQL, ]


VA ©   (2001-12-31 01:52:00) 

Кто-нибудь подскажет как изменить время ожидания выполнения запроса. ADOConnection.CommandTimeout похоже не помогает


Delirium   (2002-01-04 17:26:00) [1]

> handra
А сколько клиентов у вас ?


handra   (2002-01-04 16:52:00) [2]

>Delirium ©
как правило стоит 0, т.е. unlimited
хотя команды без той строчки, которую я указал вверху,
выполняются с тайм-аут 60 секунд


Delirium   (2002-01-04 16:33:00) [3]

Загляни сначала сюда:
Enterprise Manager->Твой сервер->Properties->Connections->Query time-out


handra   (2002-01-04 16:12:00) [4]

У TADOConnection в событиях на OnWillExecute напиши строчку:

Command.CommandTimeout := Connection.CommandTimeout;

C CommandTimeout - это явный баг господ из Борланда...


Mute   (2002-01-04 13:13:00) [5]

Можно написать свой компонент. Что-то типа:

type
TDCADOQuery = class(TCustomADODataSet)
private
{ Private declarations }
FSQL: TSTrings;
FRowsAffected: Integer;
function GetSQL: TStrings;
procedure SetSQL(const Value: TStrings);
function GetCommandTimeout: integer;
procedure SetCommandTimeout(Value: integer);
procedure Close;
protected
{ Protected declarations }
procedure QueryChanged(Sender: TObject);
public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
function ExecSQL: Integer; {for TQuery compatibility}
property RowsAffected: Integer read FRowsAffected;
published
{ Published declarations }
property DataSource;
property EnableBCD;
property ParamCheck;
property Parameters;
property Prepared;
property SQL: TStrings read GetSQL write SetSQL;
property CommandTimeout: integer read GetCommandTimeout
write SetCommandTimeout default 30;
end;


Delirium   (2002-01-01 13:15:00) [6]

Это делается в настройках самого MSSQL, а CommandTimeout может лишь ограничить это время, но не увеличить его.


kig   (2001-12-31 17:08:00) [7]

The CommandTimeout setting on a Connection object has no effect on the CommandTimeout setting on a Command object on the same Connection; that is, the Command object"s CommandTimeout property does not inherit the value of the Connection object"s CommandTimeout value.

Явно назначайте CommandTimeout для ADODB.Command


Наверх

Титульная страница Поиск, карта сайта Написать письмо