Пробовали ли вы Paradox с помощью Borland Database Engine (BDE) и связанных с ним компонентов: TTable
TQuery
TStoredProc
TDatabase
и TSession
?
Если память мне не изменяет, по крайней мереЕще в Delphi 3 отличительным фактором между «профессиональными» и «высокоуровневыми» выпусками был тип разработки баз данных «из коробки».
- В Delphi 1, BDEбыл единственный способ сделать готовую разработку базы данных.
- Delphi 2 разрешил настраиваемый слой базы данных путем абстрагирования частей иерархии компонентов базы данных.
- Delphi 3Компания Professional предоставила BDE и драйверы для файловых баз данных и Interbase.
- На один уровень выше (Enterprise? *) Они предоставили драйверы BDE для типичного клиент-сервер доступа к базе данных: SQL Server, Sybase, Interbase, Oracle, ... (и собственные драйверы для Interbase)
- Еще один уровень (Architect? *) Представил многоуровневую разработку с Midas.К сожалению, Borland сделал шаг назад с Midas, потому что многоуровневые компоненты были снова подключены к BDE.(Это было решено в Delphi 4.)
? * Обратите внимание, что я могу ошибаться относительно точного наименования этих выпусков.Примерно в то же время у меня сложилось мнение, что Borland просто придумывает «более грандиозные» имена, чтобы брать больше за функции, которые на самом деле не дают такой большой выгоды, как считают «ИТ-директора с большой проверкой» -оставляя разработчиков, чтобы справиться с последствиями.(Да, у меня есть боевые шрамы от Мидаса I.)
Отбрось в сторону, теория была ....
Если бы вы занялись разработкой базы данных начального уровня , вы бы купили Delphi ??Professional.Разработайте свою систему на основе файловой базы данных или Interbase через BDE .
Если вам позже понадобилось увеличить масштаб: вы бы обновили Delphi, приобрели выбранную вами СУБД SQL, переключили подключение через компонент TDatabase
и применили несколько необходимых настроек.
ПРИМЕЧАНИЕ. В Delphi 3 вы можете переключиться на Native Interbase (лично не рекомендуется) илииспользовать сторонние компоненты для разработки, не относящейся к Midas.Начиная с Delphi 4, ADO и DevExpress стали получать больше внимания, и в настоящее время BDE, кажется, в значительной степени забыт.
Конечно, теория и практика редко бывают в одних и тех же пабах.Однако, с несколькими предостерегающими указателями, вы сможете разработать значительное файловое решение, которое можно безболезненно обновить.
- Сохраните свою бизнес-логику вне базы данных.Возможно, это самая большая и наиболее часто встречающаяся ошибка.Огромные блоки систем часто записываются в триггерах и хранимых процедурах, что усложняет обслуживание или миграцию системы.
- Избегайте методов баз данных, специфичных для платформы.Это должно быть само собой разумеющимся, но если вы не будете явно следить за ними, вы столкнетесь с проблемами.
- Особенно актуально для файловых систем баз данных, многие поддерживают специальные механизмы блокировки - избегайте их!В любом случае они плохо масштабируются для больших многопользовательских систем.
- Создание искусственных ключей часто зависит от платформы: генераторы, столбцы IDENTITY, способ получения нового значения.
- Планируйте свою систему для больших объемов данных.Определите таблицы с высокими транзакциями и избегайте использования неконтролируемого извлечения всех записей.В этой ситуации я бы также избегал
TTable
- BDE делает много интересных фоновых вещей с TTable
, и поведение может варьироваться в зависимости от драйвера и платформы.
Отказ от ответственности: Все это было очень давно, поэтому некоторые детали могут быть немного схематичными.
Отказ от ответственности2: У меня нет опыта работы с Delphi XE специально.В настоящее время я использую D5 профессионально, а D2009 - в личном качестве.