Показать полную графическую версию : Про БД
У меня БД - 2000 записей.
Задача: У каждой записи определённому полю присвоить случайное значение.
Если использовать Adotable.Next, то выходит слишком долго.
Вопрос: как убыстрить процесс?
vasketsov
23-06-2003, 19:21
ThE ACE
может
update xxx
set updatedfield = ...
то есть на сиквеле написать?
Через ADO наверное же можно такое выполнить?
Или тебе только на клиенте это надо делать?
Знаете, вообще-то ошибка оказывается в другом.
При переходе на следующую запись почему-то таблица выходила из режима редактирования. Поэтому опятьь приходилось писать 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 нету, потому такая операция - изменил и ушел - не всегда корректна.
ну, это от много зависит... на пример от бд...
если это парадокс какой, то ему так и надо... а если клиент-сервер, то в зависимости от свойства алиаса автокоммит...
используй сиквел и не парся!!!!!!!!!!!!!
Дело в том, что у меня есть задача:
Каждые 25-30 записей мне нужно менять значение. Разве на SQL можно указать, что берём 1-е 25 записей - присваиваем - 1, вторые 25 записей - двойку и т.д.
Если можно, то укажите пример, плизззз. Очень надо!!!
vasketsov
27-06-2003, 18:05
ThE ACE
Можно.
Только напиши формат таблицы и какой сервак.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.