Войти

Показать полную графическую версию : Про БД


Nealles
23-06-2003, 13:18
У меня БД - 2000 записей.
Задача: У каждой записи определённому полю присвоить случайное значение.
Если использовать Adotable.Next, то выходит слишком долго.
Вопрос: как убыстрить процесс?

vasketsov
23-06-2003, 19:21
ThE ACE
может

update xxx
set updatedfield = ...

то есть на сиквеле написать?

Через ADO наверное же можно такое выполнить?

Или тебе только на клиенте это надо делать?

Nealles
24-06-2003, 08:00
Знаете, вообще-то ошибка оказывается в другом.

При переходе на следующую запись почему-то таблица выходила из режима редактирования. Поэтому опятьь приходилось писать adotable.edit. Из-за этого и замедлился процесс.
Вопрос: почему она выходит из режима редактирования? может можно сделать так, чтобы не приходилось каждый раз открывать его(режим редактирования в смысле). В начале где-то задать и после заполнения закрыть?

vasketsov
24-06-2003, 19:02
ThE ACE
Это противоречит концепции БД. Редактируется ТОЛЬКО теущая запись, а при переходе там режим меняется с Edit на Browse (если не ошибаюсь).

Не забывайте, что ADO - это не BDE, там Cached updates  нету, потому такая операция - изменил и ушел - не всегда корректна.

Ork Yason
25-06-2003, 08:15
vasketsov
Не забывайте, что ADO - это не BDE, там Cached updates  нету, потому такая операция - изменил и ушел - не всегда корректна.
ну, это от много зависит... на пример от бд...
если это парадокс какой, то ему так и надо... а если клиент-сервер, то в зависимости от свойства алиаса автокоммит...

DYURIK
27-06-2003, 10:44
используй сиквел и не парся!!!!!!!!!!!!!

Nealles
27-06-2003, 10:57
Дело в том, что у меня есть задача:
Каждые 25-30 записей мне нужно менять значение. Разве на SQL можно указать, что берём 1-е 25 записей - присваиваем - 1, вторые 25 записей - двойку и т.д.

Если можно, то укажите пример, плизззз. Очень надо!!!

vasketsov
27-06-2003, 18:05
ThE ACE
Можно.
Только напиши формат таблицы и какой сервак.




© OSzone.net 2001-2012