![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
запрос с помощью TADOCommand [D7, MSSQL]
ydv © (2004-08-24 14:01:00)Как мне получить набор данных, доступный для редактирования?
Пример кода:
AdoCommand.Text := 'select * from my_table;'
AdoQuery1.RecordSet := AdoCommand.Execute;
дает нередактируемый набор данных :((
jocko (2004-08-25 15:17:00) [1]AdoCommand.Text := 'select * from my_table;'
AdoQuery1.RecordSet := AdoCommand.Execute;
//
а что уж сразу ADOConnection не использовать - тоже RecordSet возвращать может :-)
а что касается таймаута, то у того же коннекшана есть такое событие WillExecute так вот там прекрасно выставляется тайм аут хоть для адокомманд хоть для адодатасет
KSergey (2004-08-24 16:25:00) [2]> [24] ydv (24.08.04 16:17)
> >Это что, через ADO я не получу результат????
> не получишь, отвалится с ошибкой
Зачем обманываешь???
Читаем наконец
> [4] KSergey © (24.08.04 14:24)
> [23] Sergey13 © (24.08.04 16:17)
> Дык его запросами. 8-)
Ну это понятно ;) Я просто уже промолчал скромно... ;)
Ega23 (2004-08-24 16:21:00) [3]Дык его запросами. 8-)
Мда, что-то торможу я сегодня. Ну я это уже в другой ветке описал...
ydv (2004-08-24 16:17:00) [4]1С у меня еще на серваке, и еще много всего
Ega23 ©
>Это что, через ADO я не получу результат????
не получишь, отвалится с ошибкой
Sergey13 (2004-08-24 16:17:00) [5]2[22] Ega23 © (24.08.04 16:14)
>Ну и... ????
Дык его запросами. 8-)
Ega23 (2004-08-24 16:14:00) [6]Господа, знаете чем перегружен сервак ydv? Я кажется знаю. 8-)
Ну и... ????
Ega23 (2004-08-24 16:12:00) [7]KSergey © (24.08.04 16:06) [18]
Обожди, это что же получается? Допустим, у меня выполняется некий ночной аудит. По неким причинам, я его не в виде job ставлю, а в виде SP, запускаемой с клиента. Предполагается, что данный аудит вернёт какую-то информацию, например число удалённых во время аудита записей. Аудит может колбаситься и 10 минут.
Это что, через ADO я не получу результат????
JibSkeart (2004-08-24 16:12:00) [8]Мда ужж .
Sergey13 (2004-08-24 16:09:00) [9]Господа, знаете чем перегружен сервак ydv? Я кажется знаю. 8-)
KSergey (2004-08-24 16:06:00) [10]> [12] ydv (24.08.04 15:20)
> Я простой запрос приведу, который всего 4 записи тащит,
> но выполняется 20 с: SELECT * FROM logs WHERE name like
> '%test%'
Если такие запросы характерны - стоит подумать об использовании полнотекстового поиска (индекса).
Хотя их наличие явно говорит о кривой архитектуре, хотя иногда, понятно, без них не обойтись... Но всегда желательно минимизировать, особенно для частых, характерных операций (там их не дожно быть!)
KSergey (2004-08-24 16:03:00) [11]> [15] ydv (24.08.04 16:02)
> [16] KSergey © (24.08.04 16:02)
Возможно, в D7 поменяли. В D5 было 30.
KSergey (2004-08-24 16:02:00) [12]> [14] Ega23 © (24.08.04 15:25)
> И, кстати, мне что-то непонятно, а откуда пошло это 30 сек?
Вшито мертво в TADOQuery
ydv (2004-08-24 16:02:00) [13]я на TAdoQuery пытаюсь делать, так вот timeout там не изменяется и равен 15 с.
Ega23 (2004-08-24 15:25:00) [14]И, кстати, мне что-то непонятно, а откуда пошло это 30 сек? При чём здесь MS SQL Server default timeout? У меня некоторые запросы по 4 минуты выполняются, и ничего страшного...
Ega23 (2004-08-24 15:23:00) [15]Но ведь не 30 секунд! :о)
ydv (2004-08-24 15:20:00) [16]Я простой запрос приведу, который всего 4 записи тащит, но выполняется 20 с: SELECT * FROM logs WHERE name like '%test%'
Вот и всё
KSergey (2004-08-24 15:14:00) [17]Да хоть трижды громадные!!!
Нахрен вся зписи тащить - это будет отвечено или нет?!!
Или хотите сказать, что 100 записей тащатся 30 сек?!! Тогда что-то надо менять... (не будет уточнять)
ydv (2004-08-24 15:10:00) [18]KSergey ©
>Сколько у него это займет листов бумаги?
только не говорите "10". Или даже 100. Такое кол-во инфы тащится сервера никак не 30 сек. (если только сервер не на P-75)
Я же говорю, перегружен сервак, таблицы громадные, хоть и проиндексированы, все равно больше 15 секунд выполняется
Ega23 (2004-08-24 15:07:00) [19]Ega23 неправ абсолютно.
Ega23 три системы складские написал, помимо основной работы. Так что Ega23 знает о чём говорит. Пользователь не должен видеть выборки с более чем 300-500 записей, это его напрягает. Идеал - от 20 до 50.
KSergey (2004-08-24 14:57:00) [20]Сколько у него это займет листов бумаги?
Только не говорите "10". Или даже 100. Такое кол-во инфы тащится с сервера никак не 30 сек. (если только сервер не на P-75)