Выбор доступа к БД

  • Автор темы svi2009
  • 8635
  • Обновлено
  • 22, Oct 2010
  • #1
Порекомендуйте чем лучше организовать доступ к БД (и соответственно формат БД) на Delphi. Описание БД: 1) количество записей - порядка 20 000, в т.ч. blop и memo 2) БД локальная 3) данные в ДБ зашифрованы 4) БД индексируется по необходимости 4) работа без стороннего ПО 5) основной режим использования БД - поиск (Locate + Filtr) 6) поддержка SQL

svi2009


Рег
13 Dec, 2009

Тем
3

Постов
3

Баллов
33
  • 22, Oct 2010
  • #2
Данная тема уже неоднократно обсуждалась. Скажу еще раз, мое мнение - либо MS SQL Express, либо 10-ка Qracle.
 

a101010


Рег
15 Mar, 2010

Тем
4

Постов
34

Баллов
74
  • 23, Oct 2010
  • #3
Скажу еще раз, мое мнение - либо MS SQL Express, либо 10-ка Qracle.
Зачем же так сразу, по условию база локальная, а не сетевая. Можно что-нибудь попроще. Заморок с написанием проги и обслуживанием базы будет меньше. Для локальных баз я использую Absolute Database.
 

eralex1978


Рег
17 Oct, 2010

Тем
1

Постов
14

Баллов
24
  • 24, Oct 2010
  • #4
eralex1978, post: 724505:
Зачем же так сразу, по условию база локальная, а не сетевая. Можно что-нибудь попроще. Заморок с написанием проги и обслуживанием базы будет меньше. Для локальных баз я использую Absolute Database.


А что будет завтра, когда БД перерастет изначально заложенные в нее требования и окажется, что для ввода цифирек нужно посадить еще 1-2-3 девчушек? Или просто найдется заказчик с аналогичной задачей, чтолько контора у него больше в 10 раз?



А что подразумевать под обслуживанием? Если подразумевается сопровождение и модификация БД, то как мне кажется сейчас каждый второй программер считает себя супер профессионалом по MS SQL (с Oracle почему-то значительно меньше), ну а уж из это толпы "профессионалов" всегда найдется более-менее грамотный хлопчик для сопровождения небольшой БД.

И совсем непонятна фраза "замороки с написанием"! Уж над чем нужно задумываться меньше всего, так это над процессом написания непосредственно кода (если я правильно понял смысл этой фразы), а вот для построения и анализа структуры БД, для указанных мною баз, есть море отличных инструментов.
 

a101010


Рег
15 Mar, 2010

Тем
4

Постов
34

Баллов
74
  • 24, Oct 2010
  • #5
Лучше всего Firebird embedded: локальная, бесплатная, и переход на сетевую версию проще некуда
 

wb77


Рег
07 Oct, 2006

Тем
0

Постов
1

Баллов
1
  • 28, Oct 2010
  • #6
kavkav, post: 724508:
Как по мне так тоже Firebird embedded.
И с доступом к бд проблем никаких.
А как там с "данные должны быть зашифрованы"? В MSSQL можно хранить данные зашифрованными.
 

demav


Рег
20 Nov, 2008

Тем
4

Постов
29

Баллов
69
  • 28, Oct 2010
  • #7
Зашифрованные данные можно организовать пользовательскими процедурами записи буфера, т.е. шифрование своим уникальным ключом, а потом архиварование и записььв БД.

Но такое щифрование можно сделать только для БЛОБ-ов, но зато для каждого субтайпа свой, это выгодно.

Но это все про локально-сетевой файерберд

зашифрованую БД можно получить используя Accuracer Database, врсия четыре.девять была на паблике.

там шифруется БД. индексируется, восстанавливается. Так что на выбор.
 

__Vlad__


Рег
03 Mar, 2008

Тем
0

Постов
5

Баллов
5
  • 29, Oct 2010
  • #8
wb77, post: 724507:
Лучше всего Firebird embedded: локальная, бесплатная, и переход на сетевую версию проще некуда
Подскажите, плз. Нужно ли инсталлировать Firebird embedded или она как portable версия работает?
 

demav


Рег
20 Nov, 2008

Тем
4

Постов
29

Баллов
69
  • 01, Nov 2010
  • #9
demav, post: 724511:
Подскажите, плз.
Нужно ли инсталлировать Firebird embedded или она как portable версия работает?
Деплоить надо только библиотеки, инсталляции не требуется. Кстати товарищи(to All) напомните какие библиотеки поставлять из комплекта embedded? интересует версия 2.5.0
 

utmost


Рег
21 Nov, 2009

Тем
0

Постов
7

Баллов
7
  • 03, Nov 2010
  • #10
Я бы порекомендовал oracle 10XE. Сначала будет трудно, но потом все окупиться надежностью и функциональностью.
 

Rabbano


Рег
22 Jun, 2009

Тем
0

Постов
14

Баллов
14
  • 18, Feb 2011
  • #11
Для Embedded Firebird надо только dll кинуть в папку с программой. Около 5 мб насколько я помню. Зато получишь почти что железобетоный сервер за 5 лет ниразу база не слетала хотя ее и не сильно адски используют и тем не менее. И как уже сказали простой переход на нормальный сервер в случае чего.
 

CBR900RR


Рег
23 Oct, 2009

Тем
0

Постов
3

Баллов
3
  • 13, May 2011
  • #13
На мой взгляд, SQLite лучше в качестве локальной БД и работать с ней проще, для доступа к базе нужна одна DLL (sqlite.dll) размером 300кб.
 

steaze


Рег
01 Sep, 2009

Тем
2

Постов
10

Баллов
30
  • 19, Jul 2011
  • #14
Firebird + FibPlus но с шифрованием туго
а разве SQLite поддерживает шифрование?
 

sx1000


Рег
22 Mar, 2010

Тем
0

Постов
2

Баллов
2
  • 08, Aug 2011
  • #15
f21sef3d223e
332e2e2233dffsddsdsdfad
23kjsoiusjhfoashfowss
 

montrex


Рег
12 Apr, 2011

Тем
1

Постов
2

Баллов
12
  • 08, Aug 2011
  • #16
Я тоже советую Firebird. Единственное, что мне "мешает": SYSDBA имеет постоянный доступ, даже если пароль другая (не masterkey)... После backup и restore с паролью "masterkey" каждый может заглядывать в БД... Или есть уже возможности предотвратить это?
 

Tinitus


Рег
14 Nov, 2010

Тем
2

Постов
9

Баллов
29
  • 24, Aug 2011
  • #17
SQL2008R2 Express + OLE DB provider for SQLServer - отличный вариант, для локальной машины в том числе - все что просили и за бесплатно, с возможностью масштабирования, шифрования и т.д.
 

teger


Рег
02 Nov, 2007

Тем
0

Постов
2

Баллов
2
  • 23, Nov 2011
  • #18
NevermoreBY, post: 724532:
Тут только Fb, Sqlite такое уже не потянет.
Почему же? Вполне потянет, другое дело что перспективы у sqlite не ясные, а FB проверенна временем
 

liberat


Рег
26 Oct, 2011

Тем
1

Постов
3

Баллов
13
  • 24, Nov 2011
  • #19
судя по поставленной задаче, более оптимальный вариант это sqlite firebird я думаю потяжелей будет, хотя если требуются хранимые процедуры, триггеры и прочие прелести, то альтернативы firebird-у нет.
 

alexpotemkin


Рег
26 Nov, 2008

Тем
0

Постов
2

Баллов
2
  • 25, Nov 2011
  • #20
Tinitus, post: 724528:
Я тоже советую Firebird.
Единственное, что мне "мешает": SYSDBA имеет постоянный доступ, даже если пароль другая (не masterkey)... После backup и restore с паролью "masterkey" каждый может заглядывать в БД...

Или есть уже возможности предотвратить это?
Создайте роль sysdba. а права дайте другому пользователю.
 

vovag3074


Рег
16 Jan, 2010

Тем
1

Постов
10

Баллов
20
  • 23, Dec 2011
  • #21
sx1000, post: 724526:
Firebird + FibPlus но с шифрованием туго
Да в чем там "тугость"? В FibPlus есть методы в которых можно шифровать и дишифровать данные на лету, другой вопрос, что запросы на шифрованные данные не пошлешь, но ведь тотальное шифрование данных в базе это несколько не серьезно На мой взгляд должна шифроваться только та инфа (поля записи) которая не предназначена для чужих глаз, естественно, что такие поля (как правило) в выборке данных не участвуют, а значит и проблем возникнуть не должно. А по поводу сервера - лично для меня однозначно Firebird!!!
 

Is_Vale


Рег
17 Aug, 2010

Тем
0

Постов
1

Баллов
1
  • 25, Dec 2011
  • #22
обеими руками за SQLite. современные компоненты для доступа к ней компилят весь код в один exe, а не десяток файлов, как в современных Firebird. в БД встроена поддержка шифрования, есть все навороты
 

fd00ch


Рег
09 Apr, 2009

Тем
0

Постов
4

Баллов
4
  • 26, Feb 2012
  • #23
а чем для такой задачи DBISAM плох? и шифрование БД поддерживает и при необходимости сетевой вариант без проблем
 

2k11


Рег
26 Mar, 2010

Тем
0

Постов
2

Баллов
2
  • 05, Mar 2012
  • #24
MS Access + ADO + EhLib Копировать и работать удобнее, т.к. почти укаждого на компе он есть и в случае чего, всегда можно на SQL-сервер переложить с небольшими затратами, только строку подключения изменить. Я так и делаю. Тем более 20тыс. записей - MS Access заглаза.
 

wsw


Рег
15 Nov, 2011

Тем
0

Постов
2

Баллов
2
  • 06, Mar 2012
  • #25
а зачем для такой простой задачи предлагать платные базы? SQLite, MySql, Firebird MsSQL express в крайнем случае.

Почему игнорируется что основные функции это поиск? Зачем здесь использовать базы заточенные на обработку транзакций.

Если понадобится расширяться всегда на эту базу можно будет повесить веб сервис на каком нибудь axis2 + staff и не морочить голову.

Главное не увлекаться хранимыми процедурами, триггерами и прочим ... И ни каких Fib-ов и прочих монстров, вдруг это надо будет куда-то мигрировать ...
 

aquafan


Рег
06 Mar, 2012

Тем
0

Постов
3

Баллов
3
  • 06, Mar 2012
  • #26
Я бы рекомендовал MySQL. Простая и гибкая. А любая локальная база рано или поздно становится сетевой. MySQL легкая, занимает мало памяти. Сколько не перепробовал серверов (MS SQL, Oracle, SQLite, Firebird) - больше нравится MySQL.
 

steaze


Рег
01 Sep, 2009

Тем
2

Постов
10

Баллов
30
  • 24, Sep 2012
  • #27
так как база подразумевает коммерческое использование (на предприятии) и непонятно сколько пользователей одновременно с ней будут работать, то Firebird очевидный выход.
 

moransm


Рег
24 Sep, 2012

Тем
1

Постов
2

Баллов
12
  • 26, Sep 2012
  • #28
FireBird + FIB имхо самое оно для небольших проектов. С шифрованием только не очень, а в остальном приличный вариант
 

master_devel


Рег
26 Sep, 2012

Тем
0

Постов
11

Баллов
11
  • 24, Jan 2013
  • #29
если речь о локале - то - вполне себе и аксес - у меня работал с милоионами записей.

некоторые выброрки сложные в нем напряжное дело - в остальном - все терпимо.

с шифрованием у него беда - ломается на ура.

как имхо - удобнее работать в 2003 оффисе с аксесом - sqlite - вполне себе ничего.

и шифрование на уровне и портабелен.

хотя имхо - сыроват.

порой глючит. - любимый прочими ФБ - не в моем вкусе.

не люблю тащить за проектом кучу хвостов. - мускуль, кста, тоже тянет портативный вариант.

надо таскать с собой одну (или несколько) dll-ек.
 

dalx


Рег
17 Feb, 2010

Тем
1

Постов
7

Баллов
17
  • 12, Feb 2013
  • #30
У вас маленькая БД, поэтому впринципе можно выбрать любую, единственное с SQL Server проблем будет меньше в плане простоты настройки.
 

Alexander_K


Рег
16 Sep, 2010

Тем
0

Постов
1

Баллов
1
  • 22, Feb 2013
  • #31
Еще предлагаю рассмотреть вариант MS SQL Server Compact Edition. Маленький, бесплатный, основной функционал присутствует.
 

Goreg


Рег
22 Feb, 2013

Тем
0

Постов
5

Баллов
5
  • 15, Mar 2013
  • #32

alexskiv


Рег
12 Mar, 2013

Тем
0

Постов
3

Баллов
3
  • 27, Mar 2013
  • #33
ДокторНА, post: 724521:
что мне не хватало в Delphi, а есть в LINQ, так это запросы к массивам.
 

Byzgan


Рег
16 Apr, 2009

Тем
0

Постов
3

Баллов
3
  • 26, Oct 2014
  • #34
Оптимальный выбор Firebird Embedded, лёгкий, бесплатный в третьей версии разработчики обещают встроить и шифрование.
 

prizrakx


Рег
26 Oct, 2014

Тем
0

Постов
2

Баллов
2
  • 26, Oct 2014
  • #35
Для локальной базы и при относительно небольшом количестве записей (20 000 - это мелочь) на сегодняшний день лучшее решение SQLite
 

S_Gur


Рег
26 Feb, 2007

Тем
3

Постов
27

Баллов
57
  • 25, Mar 2016
  • #36
sapushok, post: 724541:
SQLite поддерживает шифрование?
Да, уже поддерживает через расширение SEE - SQLite Encryption Extension.
 

crazy_coder


Рег
25 Mar, 2016

Тем
0

Постов
3

Баллов
3
  • 31, Mar 2016
  • #37
Sqlite не пробывали? Мы недавно повесили у себя для работы с графиками. в таблице более 1000 000 записей и выборка происходит за 0.002 мс
 

a2kat1k


Рег
31 Mar, 2016

Тем
0

Постов
3

Баллов
3
  • 01, Apr 2016
  • #38
FireBird мне кажется однозначно. Можно использовать режим Embedded для однопользовательского доступа. Второй вариант: в библиотеке DevExpress есть компонент MemData. Сохраняет строки в бинарный файл.
 

master_devel


Рег
26 Sep, 2012

Тем
0

Постов
11

Баллов
11
  • 08, Apr 2016
  • #39
Absolute DB не рекомендовал бы одно время много пользовался при запросах большие тормоза на сегодняшний день наиболее оптимальны это FB и MySQL
 

sergio5


Рег
28 Jan, 2013

Тем
0

Постов
5

Баллов
5
  • 24, Apr 2016
  • #40
FireBird + FireDAC = лучший выбор для локальных баз. SQLite уж сильно прост и малофункционален + FireBird (на мой взгляд) работает быстрее.
 

MikaelBox


Рег
25 Nov, 2015

Тем
0

Постов
10

Баллов
10
Тем
49554
Комментарии
57426
Опыт
552966

Интересно