Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Про БД (http://forum.oszone.net/showthread.php?t=30431)

Nealles 23-06-2003 13:18 208597

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

vasketsov 23-06-2003 19:21 208598

ThE ACE
может

update xxx
set updatedfield = ...

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

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

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

Nealles 24-06-2003 08:00 208599

Знаете, вообще-то ошибка оказывается в другом.

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

vasketsov 24-06-2003 19:02 208600

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

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

Ork Yason 25-06-2003 08:15 208601

vasketsov
Цитата:

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

DYURIK 27-06-2003 10:44 208602

используй сиквел и не парся!!!!!!!!!!!!!

Nealles 27-06-2003 10:57 208603

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

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

vasketsov 27-06-2003 18:05 208604

ThE ACE
Можно.
Только напиши формат таблицы и какой сервак.


Время: 15:21.

Время: 15:21.
© OSzone.net 2001-