Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
4 / 4 / 0
Регистрация: 21.04.2009
Сообщений: 61
1

База 10000+ записей

09.08.2011, 20:59. Показов 1311. Ответов 11
Метки нет (Все метки)

Доброго времени суток.
Хочу написать программу с работай над базой данных на 10000+ записей с возможностью написание подобия запрос и самое главное чтоб при работе з базой программа не глючила а то у меня есть подобие такого на екселе оно при 10000 тис. записей + макросов глючит просто капец
Подскажите какую БД в делфи 7 использовать лучше всего и если можно какой то пример.
Заранее благодарен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.08.2011, 20:59
Ответы с готовыми решениями:

Update в цикле 10000 записей
Добрый день, не могу понять в чем проблема, есть таблица с автоинкремнтом (индекс) и уникальным...

простая база с одним полем (оно же ключ), но много записей. как максимально быстро организовать проверку и добавление пакета новых записей?
есть простейшая БД (с одним полем), состоящая из уникальных строковых ключей, типа: ...

Random-ное уникальное значение от 1 до 10000, 10000 элементов
Здравствуйте! Подскажите есть задача вывести случайным порядком значения от 1 до 10000...

База данных из записей
дано такое задание База данных должна содержать не менее трех записей с 5 полями...

__________________
11
6231 / 3532 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
09.08.2011, 21:40 2
InterBase
FireBird
MS SQL Server
MySQL
Postgre SQL
IBM DB2
Сделайте выбор, а потом будут примеры.
1
1149 / 1009 / 164
Регистрация: 04.04.2011
Сообщений: 3,531
09.08.2011, 21:40 3
БД: Access,
компоненты: ADO
примеры: папка Demos
1
7 / 7 / 0
Регистрация: 10.08.2011
Сообщений: 9
10.08.2011, 04:28 4
Любая БД с легкостью потянет 10000+ записей без глюков. Эксель - это не БД, хотя там и есть некое подобие эмуляции БД.

Я бы Вам для начала посоветовал Firebird. Есть версия без установки - просто кидаете dll-ки в каталог с программой и оно работает. Есть стандартный набор компонент для работы (IBDatabase и т.д.) - минимум настроек, особенно для встраиваемой версии - только имя файла БД указать нужно.

По сравнению с экселем будет просто небо и земля. Как по скорости так и по функциональности.

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

ИМХО: Если сравнивать Access с тем же Firebird, по функционалу Access послабже, а в прикручивании к программе - посложнее...
0
1262 / 705 / 62
Регистрация: 21.12.2009
Сообщений: 2,255
10.08.2011, 07:58 5
Цитата Сообщение от And192 Посмотреть сообщение
в сложных запросах они от Файрберда камня на камне не оставят
Все течет, все изменяется! FB развивается и достаточно интенсивно. С вашей оценкой Access согласен.
0
1149 / 1009 / 164
Регистрация: 04.04.2011
Сообщений: 3,531
10.08.2011, 10:43 6
Delphi
1
ИМХО: Если сравнивать Access с тем же Firebird, по функционалу Access послабже, а в прикручивании к программе - посложнее...
С первым утверждением спорить глупо, хотя бы потому что акцесс вообще не скл-сервер, хоть и работает в КС-идеологии. Я предложил акцес прежде всего по двум причинам:
1) доступность, бесплатнось. Джет есть на всех ОС начиная с XE по-моему, а если какие-то траблы, то запросто скачивается последний MDAC с офиц.сайта мелкомягких.
2) Сиквель хоть и упрощен, но поддерживает стандарт SQL-92, достаточно популярный в широком спектре серверов (чего нельзя сказать о IB, "пляшущем" от устаревшего на всю голову Local SQL)
Привыкнув к акцешному скл легко переходить на промышленные сервера, а достаточно мощный и популярный сегодня мсскл так вооще - родной брат акцесу (он можно сказать вышел из него)

Короче, акцес вполне пригоден для относительно небольших БД (до 2 гб), работающих в монопольном режиме или ограниченном многопользовательском (хотя ограничение не сложно снимается путем использования нехитрой КС-логики построения пользовательского интерфейса), а также как учебное пособие начинающих "базовиков".

Второе утверждения, мягко говоря, сомнительно и говорит о весьма небогатом опыте автора по работе с акцесом. "Прикручивается" акцес элементарно с помощью всего трех компонент закладки ADO: TADOConnection, TADODataSet, TADOCommand (остальные, особенно TADOTable и TADOStoredProc абсолютно лишние и сделаны разработчиками в целях "потрафить" многочисленной армии бывших разработчиков "локалок" (dbase,paradox,fox...) , Да, в ADO есть глючки - в частности явный косяк с типом данных Numeric, определяемым как BCD с потерей значности, но это такое..

Кроме того, у IB/FB/Yaffil есть туча недостатков, начиная с того, что от версии к версии сильно изменяется сам сиквель и фичи сервера, что делает порой весьма затруднительным переход с ранней версии на более позднюю. Кроме того версионник, проблемы с несколькими серверами в сети, ограничения по кол-ву соединений, излишняя детализация с транзакциями, порой просто мешающая нормальной логике и загромождающая код. Ну и FIBPlus конечно с извечной проблемой таскания со всеми мобольными проектами (переезжающими с ПК на ПК) его инсталла. Сиквель FB тоже, мягко говоря, не супер. Ну и пользователсьские функции - это что-то с чем-то, в смысле явный "перебор" разработчиков, реально тормозящий продвижение этого сервера. Хотя, конечно, есть и плюсы
Но в целом не советовал бы этот сервер из-за его весьма ограниченной популярности и сомнительной перспективе развития.

Конечно, почти все ИМХО

Добавлено через 14 минут
Добавка.
Забыл оговориться, что мой опыт ИБ ограничен начальным знакомством с IB-6 и двухлетней работой с FB 1.0. Особенно убивало то, как сервер работает с датами (я намекаю на вторую составляющую - "время") при полном отсутствии удобоваримых скл-функций работы с датами. А также хромая наследственность Local SQL в виде неподдержки вложенных запросов (Select from select), ну и IBX компоненты тоже не блещут функционалом (по сравнению с тем же ADO), FIBPlus тех времен не сильно "умощнял" Борланда, посему код был обширный и часто излишне запутанный (особенно если использовалось несколько потоков и надо было "разруливать" транзакции "ручками")
НУ и UDF-ки, как я уже говорил - это отдельная "пестня", от которой тошниловка была та еще, особенно на мобильно развивающихся проектах с постоянными "апдейтами" и "апгрейдами")
0
1262 / 705 / 62
Регистрация: 21.12.2009
Сообщений: 2,255
10.08.2011, 11:01 7
Цитата Сообщение от MsGuns Посмотреть сообщение
ограничен начальным знакомством с IB-6 и двухлетней работой с FB 1.0.
Ну, про IB6 и говорить не бубем, это даже не позавчерашний день. А от FB 1.0 до FB 2.5 дистация огромного размера

Цитата Сообщение от MsGuns Посмотреть сообщение
как сервер работает с датами (я намекаю на вторую составляющую - "время") при полном отсутствии удобоваримых скл-функций работы с датами
Все уже есть.

Цитата Сообщение от MsGuns Посмотреть сообщение
ну и IBX компоненты тоже не блещут
Согласен

Цитата Сообщение от MsGuns Посмотреть сообщение
UDF-ки, как я уже говорил - это отдельная "пестня", от которой тошниловка была та еще,
Ну особой тошниловки не наблюдал, хотя, проблемки возникали.
Цитата Сообщение от MsGuns Посмотреть сообщение
FIBPlus тех времен не сильно "умощнял" Борланда,
С FIBPlus работаю много, очень нравится.
Все это ИМХО, конечно!
0
Antervis
10.08.2011, 11:52
  #8

Не по теме:

А давайте совать холивары в Cut-тэги?

0
7 / 7 / 0
Регистрация: 10.08.2011
Сообщений: 9
10.08.2011, 18:27 9
Каюсь, что незаслуженно обидел Access, я действительно с ним практически не работал, потому и охарактеризовал в двух словах. С поставленной задачей (замена экселю) Access справится наравне с остальными БД.

Цитата Сообщение от MsGuns Посмотреть сообщение
Короче, акцес вполне пригоден для относительно небольших БД (до 2 гб), работающих в монопольном режиме или ограниченном многопользовательском
согласен

Не стоит замарачиваться особо с деталями, выбирайте БД в первую очередь по толковой докуменатации на SQL и доступному инструментарию (визуальные средства администрирования БД). Подводные камни есть везде, это в конце-концов не смертельно.


Цитата Сообщение от MsGuns Посмотреть сообщение
Привыкнув к акцешному скл легко переходить на промышленные сервера
А вот здесь категорически не согласен. При переходе на промышленный сервер, c особенностями его SQL прийдется разбираться в полный рост - в этом плане Access выступает наравне с другими БД. А вот с общими принципами функционирования серверов такого уровня (текстовые команды серверу, бэкапы, лоады, табличные пространства, прочие прелести администрирования и оптимизации), на примере Access познакомиться не удастся (если выбирать из простых и бесплатных, с головой окунуться в эту атмосферу вам поможет MySQL, Firebird - частично, он попроще будет).


P.S. Ради справедливости хочу отметить что почти все недостатки указанные MsGuns про FireBird или просто неактуальны в рамках поставленной задачи (когда речь идет о замене для экселевской таблички, говорить о максимальном количестве подключений к серверу или проблемах с несколькими серверами просто смешно) или не соответствуют действительности (SQL в FB не Local SQL, скорее SQL:2003).
0
19 / 19 / 0
Регистрация: 22.07.2011
Сообщений: 68
10.08.2011, 20:05 10
MySQL: показался мне легким в освоении (после того, как нашел этот сайт), но уж больно много пришлось мне попотеть, чтобы суметь цепануть мускуль выше пятой версии из делфи - стандартные компоненты (BDE, ADO, dbExpress) непригодны, решил проблему установкой палитры zeos.
0
1149 / 1009 / 164
Регистрация: 04.04.2011
Сообщений: 3,531
10.08.2011, 22:41 11
Ни Боже мой не хотел тут устраивать холивар на вечную тему, хотя самому в кайф читать такие холивары ибо пользы от них бывает поболе чем от прочтения иных пудовых мануалов, НО !
Повторюсь, "отстаивая" акцес, я имею в виду то, что он хорош именно как ОБУЧАЮЩАЯ система.
В отличие от того же мускула или ИБ, которые может и лучше (конечно лучше !) как сервера, но для работы с ними нужна "травка" в виде компонент (зеос, фибплас, етц), т.е. работая с ними, тупо "подсаживаешься" на спецкомпоненты как на наркотик. Поработав достаточно долго на подсосе и вынужденный потом пересесть на другой сервер, ощущаешь "наркозависимость" в полный рост, испытывая неудобства при работе с сильно другим сервером. И дело не только в компонентах, но и в самом скл.
Помню, как мне было тяжко привыкать, что в мсскл в отличие от ИБ нельзя писать SELECT FROM StoredProc и вызывать хранимки из функций, а также отсутсвия аналога Suspend и "непрозрачности" транзакций. А потом когда пришлось шаманить старый проект ИБ просто бесился от отсутствия в ИБ вложенных запросов и пришел в ужас от танцев с транзакциями

Сейчас работаю с ораклом и посгрескл, поначалу шалел от тысячестрочных вьюх, выстроенных к тому же во вложенные небоскребы, шугался от отсутствия TOP и придурковатости технологии обращения с датами в запросах (все эти to_date). Но потом привык

Т.е. я хочу сказать что после 4-5 сервера уже нормально воспринимаешь "переезды", но вот в самом начале я бы советовал работать с упрощенной СУБД, в которой при все при этом используется 100% клиент-серверный подход.
Вот акцес ИМХО подходит под эту роль почти идеально !

Добавлено через 12 минут
Кстате, по поводу документации.
Для акцес/мсскл имеется BOL, вещь, клевость которой переоценить сложно. Для сравнения ораклисты пусть подскажут мне подобное доступное, прекрасно структурированное, поддерживаемое и дополняемое разработчиками, с таким кол-вом примеров справочное онлайн-средство.
То же самое пусть сделают любители мускула, птицы, постгреса и других..

Ну и конечно можно сказать про поставляемых с серверами стандартными клиентами. То что поставляется с ораклом - это что-то редкостное по своей убогости. Про файрберд тоже самое (может сейчас что-то изменилось - не в курсе). По крайней мере подобного микрософтошным EM+QA и близко не наблюдается. Т.е. мало выбрать сервер - надо еще побеспокоиться о скачке подходящего клиента, а это не так-то просто как может показаться. (По крайней мере для оракла у меня сейчас стоит 3 клиента: стандартный из поставки, PLSQLDeveloper и Toad. И все нужны - первый - легкий и шустрый хоть и бестолковый и ничерта в нем не видно, последний, конечно, самый многофункциональный, но интерфейс как у Корела, блин, надо учиться полгода на курсах чтоб усвоить, второе - нечто среднее, в основном там и сижу
1
1405 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,321
Записей в блоге: 1
12.08.2011, 15:43 12
Еще один плюс, в сторону Acces: удобно разработать всю структуру сначала на нем, а потом экспортировать влюбую более мощную бд.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.08.2011, 15:43

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

ОБНОВЛЕНИЕ ЗАПИСЕЙ БАЗА ДАННЫХ
Ocon = new OleDbConnection(con); Ocom = new OleDbCommand(); Ocom.Connection = Ocon; ...

База учетных записей пользователей
Здравствуйте! Я новичок в программировании на С++, но возникла необходимость написать программу...

Файлы записей: База данных Напитки
помогите плз! Нужно переделать эту программу с использованием нетипизированных файлов.: Program...

База учетных записей пользователей - C++ Builder
Запускаю программу, а тут такая ошибка, где взять такой файл, в интернете не могу найти ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.