![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Промежуточная база? [D7, MSSQL]
Zoa © (2005-01-14 10:43:00)Необходимо писать в MSSQL и в случае обрыва связи, то есть через промежуточный файл (или базу). Требование - отсутствие доп. установок компонент (типа BDE и т.д.) - например, ADO. Что посоветуете?
Anatoly Podgoretsky (2005-01-14 21:42:00) [1]После успешной репликации, файл можно и уничтожать.
sniknik (2005-01-14 21:32:00) [2]> а чтобы не рос, буду использовать savetofile & loadfromfile
хм... судя по высказываниям о том, что запись в файл в ClientDataSet сохраняется с информацией о изменениях, то именно это и не поможет от лишнего "роста". (надо чтото другое делать, типа там отключать кэширование изменений или подобное (подогнать к ADODataSet-у по поведению))
но все одно, ClientDataSet форевер!!!! ;о)) используй, даже если основное отличие и приходится "искоренять".
zoa (2005-01-14 19:10:00) [3]Всем спасибо! Действительно, решил использовать ClientDataSet, а чтобы не рос, буду использовать savetofile & loadfromfile
Anatoly Podgoretsky (2005-01-14 18:58:00) [4]sniknik © (14.01.05 16:38) [45]
p.s. по моему написание "Необходимо писать в MSSQL ..." как раз указывает на заливку данных в MSSQL а не работу с ним чтение/запись/обновление.
Вот в этом не уверен, автор не уточняет. Если только голое добавление, то задача проще, начиная от текстовых файлов, кончая любыми локальными базами.
Anatoly Podgoretsky (2005-01-14 18:54:00) [5]sniknik © (14.01.05 16:24) [43]
Не знаю, также как не знаю, как разруливается слияние.
Romkin (2005-01-14 16:41:00) [6]sniknik © (14.01.05 16:24) [43] В cds есть savepoint, к ней откатывать можно :))
sniknik (2005-01-14 16:38:00) [7]vlad_ri (14.01.05 16:28) [44]
ноу проблем, не помниш, перечитай вопрос. (это первая в топике запись) ;о))
p.s. по моему написание "Необходимо писать вMSSQL ..." как раз указывает на заливку данных в MSSQL а не работу с ним чтение/запись/обновление.
а вообще надоело, пусть будет ClientDataSet я что против чтоли? всего лиш указал на дополнительную возможность. ClientDataSet форевер!!!! ;о))
vlad_ri (2005-01-14 16:28:00) [8]2 sniknik © (14.01.05 15:49) [41]
Что-то я не помню чтоб речь шла исключительно о добавлении записей, если это так то действительно может подойти и AdoDataSet. В противном случае - сомневаюсь.
sniknik (2005-01-14 16:24:00) [9]Anatoly Podgoretsky © (14.01.05 15:55) [42]
а в ClientDataSet-е и время изменений сохраняется? или тоже придется реализовывать?
Anatoly Podgoretsky (2005-01-14 15:55:00) [10]sniknik © (14.01.05 15:49) [41]
(в итоге нет только информации об изменениях а сверять в принципе зачем? более позние данные просто принимаются и все)
Немного сложновато будет это осуществить, если в информации будет отсутствовать информация о времени. Система то много пользовательская.
sniknik (2005-01-14 15:49:00) [11]vlad_ri (14.01.05 13:37) [39]
согласен, если это нужно. если же задача проще (как в вопросе) временно накапливать данные в случае обрыва связи, и при восстановлении просто обновить/добавить то достаточно и adodataset, тем более специально оговорено условие ничего дополнительно не ставить. а это уже используется, это не дополнительное это основное.
вариант с дискетой, и для adodataset-а подойдет...
(в итоге нет только информации об изменениях а сверять в принципе зачем? более позние данные просто принимаются и все)
---------------
я пришол к тебе с дискетой, расказать что сеть упала... ;о)
Anatoly Podgoretsky (2005-01-14 13:41:00) [12]Наличие АДО на машине, не гарантирует наличия библиотек JET и MS SQL Provider. Многократно сталкивался с этим.
vlad_ri (2005-01-14 13:37:00) [13]2 sniknik © (14.01.05 12:34) [36]
Я не совсем согласен с вами, AdoDataSet сохраняет в файл все данные не делая никакого различия между изменёнными и не изменёнными данными. После сохренения в файл вы никогда больше не узнаете какие записи были изменены и какие именно изменения были проезведены, для этого вам останеться только сверить записи на стороне клиента и сервере, а теперь представьте что их не сотня и не тасяча а сотни тысячь, сколько времени вам потребуеться на сверку? В свою очередь Delta ClientDataSet-a даже после LoadFromFile содержит изменённые данные и вы можете выполнить ApplyUpdates, причём никто не запрещает вам передать по сети файл созданный ClientDataSet-ом либо скопировать на дискету, CD если у вас нет другого способа доступа к серверу и там произвести обновление данных на сервере...
Роман Снегирев (2005-01-14 12:38:00) [14]извиняюсь, не туда запостил мессидж
Роман Снегирев (2005-01-14 12:37:00) [15]В dbExpress есть вроде драйверок для работы с MySql, а вообще зачем оно (MySQL) вообще тебе надо, там ведь насколько я знаю ни ХП, ни Триггеров (соответственно даже ссылочная целостность не пооддерживается), транзакции то и то вчера только появились, чего ты делать то с ним будешь?
sniknik (2005-01-14 12:34:00) [16]vlad_ri (14.01.05 12:18) [33]
> 2 sniknik © (14.01.05 12:13) [30]
> Будьте столь любезны не спешить когда пишите, а то у меня плохо с осмысливанием...
примерно то же что позволяет clientdataset можно сделать и с помощью adodataset, в плане временного сохранения данных (посмотри хелп по SaveToFile у него).
а проблема (о ради чего предлагался clientdataset) именно в этом, не так?
Romkin (2005-01-14 12:27:00) [17]http://www.rsdn.ru/article/db/briefcase1.xml
Там же есть и по MIDAS
Fay (2005-01-14 12:19:00) [18]2 vlad_ri (14.01.05 12:18) [33]
Ага 8)
vlad_ri (2005-01-14 12:18:00) [19]2 sniknik © (14.01.05 12:13) [30]
Будьте столь любезны не спешить когда пишите, а то у меня плохо с осмысливанием...
vlad_ri (2005-01-14 12:16:00) [20]2 Fay © (14.01.05 12:07) [29]
Уж тогда COM+, у них Win2k стандарт, а MTS стала частью COM+