![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
XML как средство хранения данных [D5, Win2k, WinXP]
Smok_er © (2002-06-10 15:51:00)Уважаемые мастера!
Можно ли использовать сабж для хранения данных, т.е. вместо использования стандартных компонентов баз данных?
Есть ли какие-то компоненты (желательно бесплатные) для этого?
Slava (2002-06-11 10:43:00) [1]> Кулюкин Олег © (11.06.02 08:35)
> А про MidasLib я не знал, посмотрю что за зверь :)
Только на Д6 обязательно нужно UpdatePack 2 ставить, иначе НД, сохраненный как XML нельзя будет загрузить обратно. СТРАШНЫЙ Глюк :)
Кулюкин Олег (2002-06-11 08:35:00) [2]2 Slava © (11.06.02 06:25)
> Регистрировать - это в смысле regsvr32.exe?
ДА
> Никогда этого не делал и все работало.
У меня иногда работает, потом может отказать...
ТАк что я регистрирую.
> Это страшно?
СетамМейкеры это умеют.
Просто объем дистрибутива возрастает. Ничего сложного и страшного.
А про MidasLib я не знал, посмотрю что за зверь :)
Slava (2002-06-11 06:25:00) [3]> Smok_er (10.06.02 18:29)
> Оказывается, мидас тоже требует дополнительных dll :(
uses MidasLib;
> Кулюкин Олег © (10.06.02 17:47)
> Правда для работы TClientDataSet нужно поставлять и регистрировать midas.dll.
Регистрировать - это в смысле regsvr32.exe?
Никогда этого не делал и все работало. Это страшно?
Smok_er (2002-06-10 18:29:00) [4]2 Nikols
Мда, я понял, что XML - не самый лучший вариант хранения данных.
Только вот все компоненты, заменяющие BDE к сожалению платные :( Во всяком случае лично я не видел бесплатных.
2 Кулюкин Олег
В том то и дело, что не хочется добавлять лишнее. Оказывается, мидас тоже требует дополнительных dll :(
Кулюкин Олег (2002-06-10 17:47:00) [5]2 Smok_er (10.06.02 17:31)
> Доступ через ADO не подходит, т.к. ODBC устанавливается вместе с офисом
А при чем тут ODBC?
Mdac нужен и все.
С какой-то версии Windows он входит в поставку.
> Кстати, в TClientDataSet не нашел методов работы с XML. Может 5 Делфи не поддерживает XML?
SaveToFile/LoadFromFile
После загрузки данных получаем обычный DataSet.
Правда для работы TClientDataSet нужно поставлять и регистрировать midas.dll.
Nikols (2002-06-10 17:46:00) [6]Зачем использовать XML? Существуют компоненты для прямого доступа к данным (разных форматов) без использования BDE - даже на этом сайте есть. Нужно помнить, что в XML избыточность хранимой информации до 40 процентов. Почему бы не использовать известные форматы локальных таблиц и не усложнять задачу?
Smok_er (2002-06-10 17:31:00) [7]Будет 2 таблицы, косвенно зависящие друг от друга.
Доступ через ADO не подходит, т.к. ODBC устанавливается вместе с офисом, а он не у всех установлен. Хочется, чтобы добавление БД в программу не сильно повлияло на ее размер.
Кстати, в TClientDataSet не нашел методов работы с XML. Может 5 Делфи не поддерживает XML?
Кулюкин Олег (2002-06-10 17:17:00) [8]2 Smok_er (10.06.02 17:01)
Все данные в одной таблице?
Если да, то можно использовать ClientDataSet.
А Access Вам не нравится? Доступ через ADO.
Smok_er (2002-06-10 17:01:00) [9]К сожалению, у меня 5 версия.
Искал по гуглу то же самое - не нашел ничего. Сейчас в яндексе попробую.
Вообще, моя задача - это работать с базой данных без BDE и ODBC, т.е. напрямую с данными. И решил, что для этого сойдет XML. Может кто-то может посоветовать другие варианты (Бесплатные)? База данных, возможно, будет достигать 10-15 тыс. записей (это, я думаю, максимум).
Вячесла (2002-06-10 16:50:00) [10]Можно, только места будет много занимать и каналы связи нагрузит. Все определяется задачей. Компонентов навалом и бесплатных. Можно и вообще без компонентов- с помощью парсера, он наверняка у тебя уже стоит(майкрософтовский msxml) только библиотеку типов нужно импортировать. А так:
http://www.philo.de/xml/dom/
ну и в 6 Делфи значительно все продвинулось в данном направлении
Кулюкин Олег (2002-06-10 16:37:00) [11]Натыкался на статьи Елмановой (не уверен) про TClientDataSet и его возможности сохранять данные в файл.
Думаю поиск в Яндексе "ClientDataSet + SaveToFile" и "ClientDataSet + XML" даст результат.
Smok_er (2002-06-10 16:11:00) [12]А есть ли какие-то статьи на эту тему, примеры?
Игорь Шевченко (2002-06-10 15:53:00) [13]TClientDataSet, к примеру, может хранить свои данные в XML-формате