Delphi и локальная БД

Status
Not open for further replies.

dreadangel

New member
кто может посоветовать что можно использовать в качестве локальной БД при разработке приложения в Delphi - XML-файлы или Access не предлагать

короче в чем дело - хочу создать приложение с БД
приложение маленькое и с одним пользователем - отсюда локальная БД
так как прога будет пользоваться и на других машинах - простота deploy - не важно обединение данных - т.е. БД должна быть Embedded
и ещё бы хотел что-б данные вне проги не были читаемы - поэтому не Access и XML - легко взломать
ориентируюсь на Firebird - так как там можно писать UDF - люблю процедуры и функции

кто-то может высказаться по этому поводу? может порекомендует что то ещё?
 
Last edited by a moderator:
Firebird

Firebird однозначно :)
Читайте в теме по DBISAM.

Embedded версия - это то, что Вам нужно. Для доступа лучше всего FIBPlus. Можно попробовать бесплатный UIB

плюс к ним
Алекс FBDataset. Но сам я эти компоненты не пробовал, говорю сразу. Пишу на FibPlus.
 
Firebird однозначно :)
Читайте в теме по DBISAM.

Embedded версия - это то, что Вам нужно. Для доступа лучше всего FIBPlus. Можно попробовать бесплатный UIB

плюс к ним
Алекс FBDataset. Но сам я эти компоненты не пробовал, говорю сразу. Пишу на FibPlus.

а пример-другой ни у кого не найдется?
 
Last edited by a moderator:
SQL... Ставь MSDE на тачку и фперёд!

можешь попробовать BDE.. Это родной двиган для Дельфинария...
 
Не сочтите оффтопом, но что не устраивает в access (то есть движке Jet)?

P.S. Раньше была тема про встроенные СУБД, может что полезное найдётся.
 
Firebird - полная (практически, 100% гарантию не дам) поддержка SQL-99. Кушает мало памяти. Не требует администрирования! Быстр. Очень быстро развивается - вот список новых встроенных функций, который появятся в следующей версии 2.1


Вот, кстати, ссылка на Alex dataset.


Пример - поищите в интернете, думаю, будут с исходниками.

БДЕ по сравнению с Firebird+Fibplus - монстр. Причем если хотите нормальный SQL, то это BDE+Firebird. Плюс БДЕ больше не поддерживается и не развивается.
 
почему не Access - глюков многовато
FireBird - хорошая весчь но минус изза шифровки но это не беда
может ктото что то посоветует?
никто не пробовал SQLLite, есть у кого-то впечатления
 
to dreadangel
Если не трудно, приведите какие-нибудь глюки Jet4.0. Буду признателен.
Причём я серьёзно - по работе весьма пригодится.

Мне очень нравится Absolute Database. Это уже обсуждали:
.

SQLLite пробовал. Вполне неплохая вещь (особенно бесплатностью) и быстро прогрессирует. Не зря её выбрали как базовую для библиотеки Python'а.
 
to dreadangel
Если не трудно, приведите какие-нибудь глюки Jet4.0. Буду признателен.
Причём я серьёзно - по работе весьма пригодится.

глюки вот такие -
1. не всегда правильно работает SQL в TAdoQuery - в особенности при JOIN - не знаю как с TADOQuery но я в нем уверен на все 100% - работал MS SQL Server-oм и накаких проблем

2. lookup-ные поля - вот все изза них - не всегда правильно отображаются

3. несовместимость - при пользовании Access столкнулся с такими полями - TAutoIncField и TIntegerField они в lookup-ных наборах несовместимы или глючат страшно - попытка иэменить TAutoIncField в TIntegerField обречена на провал - несовместимость типов

хотя Access не безгрешно для маленьких приложений с БД - хорошее решение

авот вопрос тем кто работает с FireBird-ом - как там с безопастностью? есть какието примочки?

Добавка
и ещё иногда требуются копирование данных на локальном через Tclientdataset - вот именно с ним и проблемы на уровне lookup-ных полей

может кто-то чтото посоветует
 
Last edited by a moderator:
to dreadangel

Ну, поведение автоинкрементных полей - это скорее фича, чем бага, в MSDN описано и проблем не вызывало.

А вот ошибки при Join - это очень интересно. Если не затруднит, можно привести какой-нибудь модельный пример? Как воспроизвести на Jet 4.0 SP8?
Унаследованных приложений много, ещё долго будет актуально, несмотря на MS SQL Express.

P.S. Когда я разбирался с FireBird (1,5 года назад), с безопасностью было почти никак. Но как сейчас - не знаю, может получше стало.
 
И что VirtualTable даст, все равно нужно будет после внесения изменений куда то выгружать данные а при старте приложения загружать, там нужна была локальная БД
 
TinyDB (правда уже давно не обновляется, есть шифрование из коробки), FireBird, SQLite
Все можно найти в яндексе
 
В своем проекте использую SQLite. В целом доволен.
Плюсы:
1. Простота использования.
2. Встроенная система.
3. Документация, поддержка, широкий набор компонентов, в т. ч. из коробки (FireDAC)
Минусы: Не замечено.
Подходит под небольшие проекты.
Сейчас смотрю, как SQLite будет работать с большими файлами, т. к. база разрослась до 1 Gb и это в общем-то не придел.
 
Все зависит от поставленной задачи. SQLite - для простых задач. Там где нужны процедуры и функции - Firebird или Embeded Mysql
 
Status
Not open for further replies.
Back
Top