#1 16.02.08 12:35
хранение данных в файле
До сих пор работала с СУБД MSSQL и немного firebird и interbase(informix не в счет :))) ). Необходимо написать приложение именно в Делфи, работающее с данными и которое по разным причинам не может использовать эти три СУБД. Идеальный вариант - это вообще хранение данных в файле без какой-либо СУБД. Просто ситуация такая, что программа предположительно будет стоять на большом количестве машин, не связанных в сети. Таким образом, на каждой машине должна стоять СУБД. А заказчик дуб дубом, пожелание такое "чтобы скопировал экзешник, запустил и все работало". Т.е никакую СУБД он ставить не будет. Инсталяторы писать я не умею :( (Кстати, буду благодарна за любую информацию по технологии, которая позволяет из VS2005 создовать setup проэкты. В инете про это написано не много ). Вот и возникла потребность хранить данные в файле. Теперь вопрос: как луче это организовать?
Offline
#5 17.02.08 00:29
Re: хранение данных в файле
2Я
Предубеждения заказчика. У них сейчас есть действующий проект (СУБД firebird) ОЧЕНЬ коряво написанный. Они с ним намучались уже, кое что и я исправляла. Все конечно от криворукости разработчиков, но осадок остался. А с Interbase у них раньше проблемы были. Кроме того, не знаю как с другими версиями, но firebird 1.5 конфликтовал с вистой. В общем не хотят они две этих субд использовать и все.
ЗЫ. забыла сказать, что возможность того, что пропадут данные за 1-2 недели не сильно волнует, так что такая система сохранности данных как в oracle или mssql (ну, типа механизм отката транзакций и пр.) не особенно нужна. И еще. Все данные помещаются в одной таблице. Собственно, и интересует, а нужна ли вообще субд? или можно тупо как-нибудь с каким-нибудь файлом работать?
Offline
#8 17.02.08 17:59
Re: хранение данных в файле
Paradox! :) Delphi/Builder замечательно работают с этой СУБД через BDE, который ( если его нет в венде пользователя ) можно легко вшить в будущий дистрибутив с помощью InstallShield. В понятиях это СУБД как я помню БД - это папка, таблицы это файлы :)))
Offline
#10 17.02.08 23:06
#11 19.02.08 12:15
Re: хранение данных в файле
Гораздо проще, удобнее и быстрее будет написать инсталяшку.
Начнется все с простого "нам нужна всего одна табличка и не нужна целостность данных", потом будет "ой, данные пропали, а как сделать чтобы не пропадали?" ну и т.п. и т.д. Это суровые реалии.
Берите СУБД (можно MS SQL Server 2000 версию MSDE). В Inno Setup есть под нее скрипт, если дойдете до этого, могу выслать кусок кода инсталлятора (в inno setup)
Offline
#12 19.02.08 17:38
#13 19.02.08 20:57
Re: хранение данных в файле
Всем спасибо за обсуждение. Уже начала реализацию варианта, в котором данные будут тупо храниться в файле. Заказчик был поставлен в известность и о возможных проблемах с "пропажей данных" и о проблемах с "выборкой/сортировкой". Его все устраивает.... Ну и пожалуйста :)
Уважаемые любители XML! Если можно, скиньте, пожалуйста, какой-нить демонстрационный проэкт (луче на делфи), в котором приводится пример работы с XML. На данный момент встречала XML только когда работала Vs2005, там ета IDE скидывает описание классов и прочее в XML файл. Конечно понимаю, в инете все есть, но на примерах все же быстрее.
2Мерзкий
Вообще была мысль реализовать все на MS SQL Express 2005 (что такое MSDЕ не знаю). Заглохло по двум причинам. Во-первых, и это главное, на некоторых машинах, на которых предполагается использование этого проекта уже имеется SQL 2000, и возможен конфликт (по крайней мере, были преценденты, когда после установки express 2005 умирал sql2000 personal edition). А во вторых, это надо опять же писать инсталяшку. Самый доступный вариант, который я попробовала это использование setup projects в VS2008. В итоге мой первый инсталяционный проект устанавливал сервер, но как создать там БД , таблицы и пр. я не нашла:( Конечно, можно поставить query analyzer и сказать заказчику самому пропускать скрипты, но , думаю, не согласится. Что такое inno setup тожа пока не знаю.
Offline
#14 19.02.08 23:00
Re: хранение данных в файле
погугли "dephi xml"
вот с первой страницы - http://edocs.phpclub.net/xml/Delphi_XML.html
к сожалению, я на дельфи уже года 3 как не пишу...
Исправлено CbIP (19.02.08 23:01)
Offline
#15 20.02.08 18:18
#16 20.02.08 18:31
#17 20.02.08 20:37
Re: хранение данных в файле
Думаю, что Вы рано или поздно придете к мысли о том, что лучше использовать нормальную СУБД, чем использовать обычный файл. Повторюсь, что разобраться с инсталлятором гораздо проще, быстрее и удобнее, чем разрешать проблемы с файлом в больших и малых количествах. MSDE - это DesktopEngine, тот же 2005EE, но 2000-й.
Создавать базу и обьъекты в ней можно обычными SQL-скриптами, которые выполняются из osql.exe из командной строки (все делается в инсталляторе).
Пользователю при установке надо будет 2-3 раза нажать "Далее". Это только на первый взгляд сложно и запутанно, но, поверьте, ничуть не сложнее работы с обычным файлом :)
Offline
#18 20.02.08 20:39
Re: хранение данных в файле
efferson написал(а):
Delphi/Builder замечательно работают с этой СУБД через BDE, который ( если его нет в венде пользователя ) можно легко вшить в будущий дистрибутив с помощью InstallShield
тебе же неписали, что имеются проблемы с бде на висте... что интебазе, что фриварный фаербёрд - оба работают через бде... да и проблем там куча... особенно при разростании базы...
Tigrishka, посмотри в сторону DBF... сам на билдере писал в свое время выгрузку в дбф... особых проблем в работе нет... одна таблица - один файл дбф... кстати, были в инете и компоненты для работы с бдф
Offline
#19 20.02.08 22:41
#20 20.02.08 22:51
Re: хранение данных в файле
Jaguar написал(а):
тебе же неписали, что имеются проблемы с бде на висте... что интебазе, что фриварный фаербёрд - оба работают через бде... да и проблем там куча... особенно при разростании базы...
через БДЕ с ИБ-клонами работают только криворукие приверженцы старья.
ФБ работает отлично. у нас на одном объекте до 100000 транзакций в день, под линуксом сервер не перезагружается годами. никаких тормозов (они бывают в основном при неоптимизированных запросах), никаких глюков, всё пучком. сейчас уже даже и не знаю сколько база весит... гбайты...
Jaguar написал(а):
Tigrishka, посмотри в сторону DBF... сам на билдере писал в свое время выгрузку в дбф... особых проблем в работе нет... одна таблица - один файл дбф... кстати, были в инете и компоненты для работы с бдф
БДФ полное уЁ.
Offline

