Отклик 2 - Василий Цыхмыстро
Может быть это не совсем моё дело (если так, то я конечно извиняюсь), но прочитав "Советы" (Версия 1.1.7 от 1.12.1999) по DCOM я хотел бы коё-что про это рассказать. Если это не пригодиться, то прошу прощения за навязчивость...
Когда я занялся этим вопросом, то пришёл к выводу, что:
- Если делать локатьную базу данных с помощью одного лишь TClientDataSet и dbclient.dll, то в этой базе данных будут храниться не только данные как таковые, но и их эволюция, т.е. все изменения, происходящие с базой, притом точно в той же последовательности, в какой они были сделаны (удалённые записи и старый вид модифицированных). Следовательно, эта база представляет собой последовательный список изменений... И последовательным вызовом UndoLastChange можно вернуться к самому началу - пустой базе. Размер этой базы данных пропорционален количеству изменений, и, поэтому, её лучше не использовать для каких-либо проектов, кроме самых маленьких...
- Когда же я вызывал CloneCursor в надежде, что лишняя информация отбросится, то... зря я это делал.
От другого читателя: |
Все это правильно, однако открываем Help и читаем: >procedure MergeChangeLog; >Description >Call MergeChangeLog to merge changes in the change log into the actual data for the >dataset, effectively creating a new data baseline. Existing values for which changes >exist are overwritten. >Note >Ordinarily, applications need not call this method. It is called automatically by >ApplyUpdates as part of the updating process. Все, проблема избыточных данных решена.
Vadim Petrov
Очень буду рад, если это поможет ещё кому-то, кроме меня...
С уважением, Chronic
(Василий Цыхмыстро)
[000507]