Форум: "Базы";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
ВнизПромежуточная база? Найти похожие ветки
← →
Zoa © (2005-01-14 10:43) [0]Необходимо писать в MSSQL и в случае обрыва связи, то есть через промежуточный файл (или базу). Требование - отсутствие доп. установок компонент (типа BDE и т.д.) - например, ADO. Что посоветуете?
← →
Fay © (2005-01-14 10:45) [1]Если не секрет, как Вы вАщЕ подключаетель с MSSQL?
← →
Zoa © (2005-01-14 10:55) [2]AdoConnection
← →
Соловьев © (2005-01-14 10:57) [3]3-х звенка, там можно отключатся от базы. локально работать. сохранять результаты, а потом подключится и залить изменения.
← →
Fay © (2005-01-14 10:59) [4]>> отсутствие доп. установок компонент (типа BDE и т.д.) - например, ADO.
>> AdoConnection
?!!
← →
Zoa © (2005-01-14 10:59) [5]Где найти?
← →
Fay © (2005-01-14 11:04) [6]Что найти?!
← →
vlad_ri (2005-01-14 11:04) [7]Почитайте про TClientDataSet
← →
Zoa © (2005-01-14 11:05) [8]>> отсутствие доп. установок компонент (типа BDE и т.д.) - например, ADO.
>> AdoConnection
>>?!!
Тире! Иначе, ADO не требует установки доп. компонент - компонент ОС! Например, BDE компоненты без установленной BDE работать не будут!
← →
Соловьев © (2005-01-14 11:09) [9]http://olegmotov.h1.ru/articles/inprisemidas/toc.htm
← →
Zoa © (2005-01-14 11:09) [10]>>Почитайте про TClientDataSet
Может, ошибаюсь, но он хранит в памяти, а не в файле. Данные пишутся регулярно (например, с прибора). При обрыве надолго такая нагрузка на вирт. память....
← →
Fay © (2005-01-14 11:12) [11]2 Zoa © (14.01.05 11:09) [10]
Разделите локальное сохранение и сохранение в базу. Типа по умолчанию связи с сервером нет, а если есть, то запуздыриваем туда из буфера.
← →
vlad_ri (2005-01-14 11:13) [12]А теперь предположим что вы ставите вашу программу на динозавра с Win95 или Win98 там ADO и в помине нету, придётся вам до устанавливать mdac...
← →
Fay © (2005-01-14 11:13) [13]>> При обрыве надолго такая нагрузка на вирт. память....
А писать надо не в виртуальную, а во внешнюю память (типа на винт).
← →
Fay © (2005-01-14 11:15) [14]2 vlad_ri (14.01.05 11:13) [12]
Это не страшно : можно написать промежуточный сервер с требованиями попроще - часто это не задруднительно.
← →
ЮЮ © (2005-01-14 11:17) [15]>Данные пишутся регулярно (например, с прибора)
Не сами же они пишутся. И не в TTable, надеюсь.
try
<записать в БД>
exсept
<записать в локальный файл>
end
+ найти место и время для передачи на сервер записанных ранее на локальном компе данных
← →
Zoa © (2005-01-14 11:17) [16]>>2 Zoa © (14.01.05 11:09) [10]
>>Разделите локальное сохранение и сохранение в базу. Типа по ...
Спасибо, до этого я и сам догадался. Но какая простая БД есть в моем распоряжении на лок. компе? Это я и спрашиваю!
← →
Fay © (2005-01-14 11:19) [17]СreateFile()
← →
Zoa © (2005-01-14 11:22) [18]>>А теперь предположим что вы ставите вашу программу ....
win2000 - корпоративный стандарт. Манией величия (написать программу всех времен и народов) - не страдаю.
← →
Fay © (2005-01-14 11:29) [19]>> win2000 - корпоративный стандарт
Тогда Jet
← →
vlad_ri (2005-01-14 11:33) [20]2 Zoa (14.01.05 11:22) [18]
Спасибо хоть что сказали какой у вас стандарт а то мы ж люди бедные иной раз и на 4-ках работаем!
Но кажется я вам уже советовал обраттиться к документации по TClientDataSet у него есть метод:
procedure SaveToFile(const FileName: string = ""; Format TDataPacketFormat=dfBinary);
Description
Call SaveToFile to write a client dataset’s data to an external file for later use by this or other client datasets.
FileName is the name of the external file to use. If the file already exists, its current contents are overwritten. If an empty string is passed for the FileName parameter (or, in Delphi, if this parameter is omitted), the data is saved to the file specified by the FileName property.
Format indicates what format to use when saving the data, binary (dfBinary) or XML (dfXML), or UTF8-based XML (dfXMLUTF8).
← →
Zoa © (2005-01-14 11:41) [21]>>Тогда Jet
Access надо сжимать вручную, а то вырастет.
← →
Zoa © (2005-01-14 11:45) [22]>>Спасибо хоть что сказали какой у вас стандарт ....
Если TClientDataSet хранит все в памяти, то сохранение есть просто дублирование на винт. Или я не прав и в памяти только несохраненная часть?
← →
Zoa © (2005-01-14 11:48) [23]>>Не сами же они пишутся ...
Файл будет расти. Его удалять, когда не нужен и создавать при необходимости заново? А если связь прервалась при записи из файла? Тогда еще и определять, что успел записать!... Писать небольшую базу данных вручную не хочется. Я и спрашиваю про стандартные компоненты.
← →
Zoa © (2005-01-14 11:52) [24]>>http://olegmotov.h1.ru/articles/inprisemidas/toc.htm
Спасибо, уже смотрю. Но слишком много. Пока даже не понял, не дополнительная компонента ОС ли это? Черкните пару слов по теме, если можно.
← →
vlad_ri (2005-01-14 11:58) [25]2 Zoa © (14.01.05 11:45) [22]
В принципе вы правы, сохраняется всё содержимое, но у этого компонента есть свойство Delta которое содержит изменённые строки и те изменения которые над данными были произведены, метод ApplyUpdates производит запись изменений в базу возвращая количество ошибок если таковые имели место быть
← →
vlad_ri (2005-01-14 12:01) [26]2 Zoa © (14.01.05 11:45) [24]
нет, это не дополнительный компонент но переписать и зарегистрировать midas.dll на машине клиента вам придётся...
← →
Fay © (2005-01-14 12:01) [27]>> А если связь прервалась при записи из файла?
Есть такая хорошая штука - MTS
← →
vlad_ri (2005-01-14 12:03) [28]2 Fay © (14.01.05 12:01) [27]
Вы на счёт Microsoft Transaction Server?
← →
Fay © (2005-01-14 12:07) [29]2 vlad_ri (14.01.05 12:03) [28]
Нет, блин! Просто Мегафон не люблю! 8)
Конечо Microsoft Transaction Server.
← →
sniknik © (2005-01-14 12:13) [30]точно так же как клиентдатасет ододатасет позволяет создавать такиеже (аналогичные) файлы, и в памяти также держит. и все одно уже используются компаненты.
← →
Fay © (2005-01-14 12:14) [31]О, мастера подтягиваются 8)
← →
vlad_ri (2005-01-14 12:16) [32]2 Fay © (14.01.05 12:07) [29]
Уж тогда COM+, у них Win2k стандарт, а MTS стала частью COM+
← →
vlad_ri (2005-01-14 12:18) [33]2 sniknik © (14.01.05 12:13) [30]
Будьте столь любезны не спешить когда пишите, а то у меня плохо с осмысливанием...
← →
Fay © (2005-01-14 12:19) [34]2 vlad_ri (14.01.05 12:18) [33]
Ага 8)
← →
Romkin © (2005-01-14 12:27) [35]http://www.rsdn.ru/article/db/briefcase1.xml
Там же есть и по MIDAS
← →
sniknik © (2005-01-14 12:34) [36]vlad_ri (14.01.05 12:18) [33]
> 2 sniknik © (14.01.05 12:13) [30]
> Будьте столь любезны не спешить когда пишите, а то у меня плохо с осмысливанием...
примерно то же что позволяет clientdataset можно сделать и с помощью adodataset, в плане временного сохранения данных (посмотри хелп по SaveToFile у него).
а проблема (о ради чего предлагался clientdataset) именно в этом, не так?
← →
Роман Снегирев (2005-01-14 12:37) [37]В dbExpress есть вроде драйверок для работы с MySql, а вообще зачем оно (MySQL) вообще тебе надо, там ведь насколько я знаю ни ХП, ни Триггеров (соответственно даже ссылочная целостность не пооддерживается), транзакции то и то вчера только появились, чего ты делать то с ним будешь?
← →
Роман Снегирев (2005-01-14 12:38) [38]извиняюсь, не туда запостил мессидж
← →
vlad_ri (2005-01-14 13:37) [39]2 sniknik © (14.01.05 12:34) [36]
Я не совсем согласен с вами, AdoDataSet сохраняет в файл все данные не делая никакого различия между изменёнными и не изменёнными данными. После сохренения в файл вы никогда больше не узнаете какие записи были изменены и какие именно изменения были проезведены, для этого вам останеться только сверить записи на стороне клиента и сервере, а теперь представьте что их не сотня и не тасяча а сотни тысячь, сколько времени вам потребуеться на сверку? В свою очередь Delta ClientDataSet-a даже после LoadFromFile содержит изменённые данные и вы можете выполнить ApplyUpdates, причём никто не запрещает вам передать по сети файл созданный ClientDataSet-ом либо скопировать на дискету, CD если у вас нет другого способа доступа к серверу и там произвести обновление данных на сервере...
← →
Anatoly Podgoretsky © (2005-01-14 13:41) [40]Наличие АДО на машине, не гарантирует наличия библиотек JET и MS SQL Provider. Многократно сталкивался с этим.
Страницы: 1 2 вся ветка
Форум: "Базы";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.039 c