Delphi

Delphi базы данных: Изучаем Delphi — СУБД — Delphi и базы данных

Содержание

Возможности — Embarcadero

База данных

Мощные межплатформенные компоненты для баз данных FireDAC обеспечивают доступ к данным в процессе разработки и эксплуатации. Подключайтесь к ведущим базам данных быстрее и проще при помощи FireDAC.

Анализируйте свою базу данных непосредственно из интегрированной среды разработки

Проводник баз данных Data Explorer позволяет разработчикам с высокой скоростью осуществлять навигацию по таблицам базы данных, представлениям, сохраненным процедурам и функциям непосредственно из интегрированной среды разработки RAD Studio. При помощи Data Explorer вы можете быстро просматривать и редактировать живые данные, а также создавать и изменять таблицы из поддерживаемых баз данных. Проводник баз данных Data Explorer также позволяет перетаскивать данные непосредственно в свой проект с автоматическим добавлением подключения к базе данных и запроса для использования кода.

Непревзойденное быстродействие, оптимальная скорость и стабильность.

FireDAC — универсальная библиотека Universal Data Access для различных устройств, которые подключены к корпоративным базам данных. Мощная и универсальная архитектура FireDAC предусматривает встроенную функцию прямого доступа из Delphi и C++Builder к InterBase, SQLite, MySQL, MariaDB, SQL Server, Oracle, PostgreSQL, DB2, SQL Anywhere, Advantage DB, Firebird, Access, Informix, DataSnap и др., в том числе из базы данных NoSQL MongoDB.

Читать далее на FireDAC

Гетерогенные запросы

FireDAC Local SQL позволяет разработчикам быстро объединять источники данных для запуска гетерогенных запросов для нескольких типов источников данных.

Local SQL работает с любым источником данных, который может быть расположен в TDataSet (например, с файлами CSV или запросами из нескольких баз данных), для создания виртуальной базы данных, работающей с SQL. — Идеально подходит для переноса и консолидации данных.

Встраиваемая база данных SQL бизнес-класса

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

InterBase предоставляет корпоративные функции для баз данных (например, прозрачное шифрование на уровне столбцов и протоколирование баз данных) по сверхнизкой цене в составе подсистемы хранения базы данных SQL, которую можно развернуть внутри программы установки.

InterBase отличается низкими требованиями по ресурсам, а потому может использоваться в качестве глубоко интегрируемой базы данных, которая работает под операционными системами Windows, Linux, macOS, iOS и Android. Читать далее на InterBase


Ведущие мировые компании полагаются на программное обеспечение, созданное с помощью продуктов Embarcadero

Встроенная Delphi база данных (часть 1)

Здравствуйте Delphi’сты и им сочувствующие.

     В комплекте с Delphi 7 поставляются сразу несколько библиотек для работы с базами данных (ADO, BDE, dbExpress, InterBase и др.). Для того чтобы создать приложение, работающее с локальной базой данных, то вы обычно используете библиотеку BDE. Эта библиотека создана компанией Borland и уже порядком устарела. Но без определённой подготовки операционной системы эти компоненты работать не будут. Есть альтернатива этим компонентам.

     Существует автономный компонент TClientDataSet который использует свой собственный формат данных.

    Итак, переходим к практике. Компонент TClientDataSet использует файлы с расширением *.CDS и *.XML мы будем рассматривать формат CDS, так как XML формат занимает вдвое больше места на диске и такой файл легко можно изменить, открыв его через блокнот. Этот компонент при создании проецирует файл в память и модифицирует только память, а при уничтожении данные записываются в файл целиком. Путь к файлу определяет свойство FileName. Файлы формата CDS можно найти в папке program files\Common Files\Borland Shared\Data. Давайте сначала откроем один из них. Скопируем один из них в папку c:\data .

    Кидаем на форму 4 компонента
    1.  TClientDataSet
    2.  TDataSource
    3.   TDBGrid
    4.  TDBNavigator

    В результате :
    1.  DataSource1
    2.  ClientDataSet1
    3.  DBGrid1
    4.  DBNavigator1

    Настраиваем их свойства так чтобы получилось примерно так:
    DBNavigator1.DataSource = DataSource1
    DBGrid1.DataSource = DataSource1
    DataSource1.DataSet = ClientDataSet1
    ClientDataSet1.FileName = ‘D:\111\www\customer.cds’

    ClientDataSet1.Active = True (самое главное этого не забыть :-))

    И всё готово. Вы сразу у меня спросите: «А как создать новую таблицу?».
     Всё очень просто даже не нужно НИКАКИХ дополнительных программ, только компонент TClientDataSet и конечно Delphi.

    1.  Создаём новый проект (можно даже его не сохранять) и добавляем на форму компонент TClientDataSet.
    2.  Сначала определим структуру таблицы. Для этого открываем свойство FieldDefs нашего компонента. Открывается окно «Editing ClientDataSet1.FieldDefs» жмём «добавить новый», и определяем свойства поля (тип, формат, размер и т. д.).
    3.  Теперь самое главное. Щёлкаем правой кнопкой мыши на компоненте TClientDataSet и выбираем пункт CreateDataSet. Потом ещё раз открываем контекстное меню и выбираем пункт «Save to binary MyBase file» и сохраняем файл туда, куда нам надо.

     Всё готово теперь у нас есть файл CDS. Можно закрывать данный проект и создавать новый, так как это было показано выше. Изменяете его, как хотите, добавляйте, удаляйте, изменяйте короче как обычно. Как модифицировать файл программно и фильтровать и индексировать записи, я вам расскажу позже.

Базы данных

— соединения с базами данных Delphi Базы данных

— соединения с базами данных Delphi

Базы данных — соединения с базами данных Delphi

Delphi — отличный язык, но, основываясь на файлах справки, как его подключить к базам данных не совсем понятно.

На палитре инструментов есть 2 подходящие вкладки.

  • Доступ к данным
  • Элементы управления данными
Элементы управления данными на самом деле довольно просто подключить, как только доступ к данным настроен. Просто используйте списки выбора, чтобы набор Источник данных и Поле данных в указанном порядке.

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

источников данных .

TTable -> TDataSource -> TQuery
TTable -> TDataSource -> TDBComboBox
TDatabase -> TTable -> TDataSource -> TDBComboBox
 
TTable подключается к базе данных ODBC, каталогу для таблиц Paradox,
или компонент TDatabase.
Имя базы данных, имя таблицы

Список выбора в TTable.DatabaseName перечисляет доступные псевдонимы ODBC.
и значения TDatabase.DatabaseName.

TDataSource — набор данных (TDataSet/TTable)
              Используйте это для обработки уровня записи.
              Он удерживает все связанные элементы управления, указывающие на одну и ту же запись.
              Все компоненты, поддерживающие данные, должны быть подключены к источнику данных.

TDBComboBox — источник данных (TDataSource), поле данных

более

First, Next, Last (и т. п.) являются абстрактными членами TDataSet.
DataSet является свойством TDataSource.
TTable является наследником TDataSet.

 

Используйте TDatabase при использовании BDE. Явное объявление не требуется, если вы не хотите доступ к свойствам и методам во время выполнения. Основным преимуществом является возможность отключения диалоговое окно запроса имени пользователя/пароля и/или предоставлять эти данные программно.

Если TTable используется без явной связи с существующая TDatabase, затем создается неявная TDatabase по мере необходимости для управления соединением.


Основная процедура просмотра содержимого таблицы

Поместите 3 компонента на новую (пустую) форму.

  • Доступ к данным/Таблица
  • Доступ к данным/источник данных
  • Управление данными / DBGrid
Установите следующие свойства На этом этапе данные таблицы должны быть видны.

Чтобы пройтись по записям, дважды щелкните компонент TTable (откроется диалоговое окно редактора полей) и используйте кнопки видеомагнитофона для просмотра записей.


База данных

Используйте TDatabase, если хотите подключиться к нескольким таблицам в той же базе, или если вы хотите подавить надоедливую подсказку входа в систему (Спорим, я хочу :)).

    База данных1.Псевдоним Выберите из списка псевдонимы базы данных ODBC или BDE. (Я предполагаю, что ваша система имеет по крайней мере один определенный.) Установка этого параметра очищает База данных1.DatabaseName .
    База данных1.DatabaseName Это имя, на которое будут ссылаться компоненты TTable. Это может быть то же самое, что и Database1.AliasName , вы можете придумать имя или ввести полный путь к База данных Paradox (справочник).
    Здесь нельзя ввести файл MS Access mdb.
    Database1.LoginPrompt Установите это значение False, чтобы отключить диалоговое окно по умолчанию.
    База данных1.OnLogin Добавление кода к этому событию также отключит диалоговое окно по умолчанию. (Жесткое кодирование идентификаторов пользователей и паролей считается проблема.)
    База данных1.Параметры Если Database1.AliasName пусто, а Database1.DriverName присваивается MSACCESS, то вот как указать базу данных MS Access.
     ИМЯ БАЗЫ ДАННЫХ = H:\Shared\xxx\Databases\Converted.mdb
    ODBC DSN =
     
Обратите внимание, что при прямом подключении к базе данных MS Access полный путь входит в список строк
Params
, не параметр DatabaseName .

не могу понять как получить Драйвер Microsoft Access (*. mdb) работать.

Последовательность подключения к файлу MS Access mdb без использования ODBC.


Полевые компоненты

Всякий раз, когда TTable (или другой компонент на основе TDBDataSet) помещается в форму, Delphi автоматически создает компоненты (базового типа TField) для всех доступных полей. С помощью диалогового окна Редактор полей (дважды щелкните компонент TTable), вы можете контролировать, какие компоненты поля создаются. Кроме того, вы можете явно создать вычисляет поля и поиска .

Создание явных компонентов полей имеет ряд преимуществ.

Вы должны использовать редактор полей для добавления и удаления постоянные поля.


БДЭ

Механизм базы данных Borland (BDE) предоставляет возможность для доступа к различным типам баз данных с помощью Data Access 9Компоненты 0015. Основным недостатком является то, что BDE должен быть установлен до ваши программы будут работать.

Однако, с точки зрения разработчика, Data Explorer на основе BDE — отличный инструмент, который вы должны быть хорошо знакомы. (Изнутри Delphi выберите Database / Explore ) Этот инструмент позволит вам просматривать таблицы — вы можете видеть данные, определить структуру и т.п.

Запустите администратор BDE для определения псевдонимов.


АДО

ADO позволяет разрабатывать приложения баз данных, которые не нужен BDE для запуска. Вместо этого вы используете MDAC. Основное отличие состоит в том, что MDAC является частью Windows 98 и более поздних версий. (т.е. ВАМ не нужно его устанавливать).

Бесплатный онлайн-курс

ADO не является частью Delphi 5 Professional — его необходимо импортировать. Обратите особое внимание на эти инструкции по установке. Project / Import Type Library и выберите

  • Microsoft ADO Data Control 6.0 (SP3) (OLEDB) (версия 6. 0)
  • Microsoft ADO доб. 2.1 для DLL и безопасности (версия 2.1)
Однако у компонентов нет пользовательских значков и отсутствует помощь.


КА ДАО

Одним из вариантов является использование KA Dao, бесплатный компонент доступен из www.delphi.pari.bg, www.delphiwarrior.freeservers.com или www.torry.net.

Доступная справка довольно хороша, но она не интегрирована в справку Delphi. Просто откройте KADAO.HLP . Основные инструкции описаны через

      Содержание / Советы и рекомендации /
         Как сделать простое приложение, используя KADao в качестве компонента таблицы? 

    Чтобы получить доступ к файлу *.mdb,

  • Установите следующие свойства в указанном порядке
    Компонент Свойство Значение Комментарии
    KADaoDatabase1 Тип базы данных Доступ Это значение по умолчанию
    База данных имя файла *. mdb
    Мдбверсионаутодетект Истина Дополнительно, может помочь
    Версия 3,5
    3,6
    4,0
    Access XX-97
    Access 2000-2002
    Access 2002 SP-1
    Подключено Верно Это подключает базу данных
    KADaoTable1 База данных KADaoDatabase1
    Имя таблицы Выберите один из списка
    Активный Верно
    Источник данных1 Набор данных KADaoTable1
    Включено Верно
    DBEdit1 Источник данных Источник данных1
    Поле данных Выберите любое поле
    DBNavigator1 Источник данных Источник данных1
    VisibleButtons Отключите те, которые вам не нужны
    KADaoDatabase1 также имеет Имя пользователя , Password и DatabasePassword , которые, возможно, потребуется установить. Разница между Password и DatabasePassword четко не объясняется.

    Существует 18 связанных dcu, поэтому я храню их все вместе с исходным каталогом KADAO. и ссылку на него.

      Инструменты/Параметры среды…/Библиотека/Путь к библиотеке


    Запуск с компакт-диска

    Запуск программного обеспечения с компакт-диска (устройство только для чтения) довольно просто

      Установите  KADaoDatabase1.ReadOnly  на  True 
      По умолчанию  Ложь 
      
      Установите  KADaoDatabase1.Exclusive  на  True 
      По умолчанию  Ложь 
       
      Вы можете проверить первый шаг, щелкнув правой кнопкой мыши файл *.mdb в проводнике Windows и установив для его свойств значение ReadOnly .

      Обычно при открытии файла *.mdb файл блокировки (*.ldb) создается в том же каталоге, что и файл *.mdb. Однако, поскольку компакт-диск предназначен только для чтения, вам нужно указать движку базы данных jet не создавать файл блокировки — ReadOnly / Exclusive делает это.


      Код «за запись»

      Вы можете поместить код «за запись» под любой

      • DataSource1DataChange
      • KADaoTable1AfterScroll
      Они оба, кажется, работают.


      Ошибки

      Моя система Windows 98 отказывается запускать исполняемый файл, потому что в ней нет лицензия ДАО. Windows 9В 8 se проблем нет.


      дбЭкспресс

      dbExpress предположительно является заменой BDE (который больше не поддерживается). Для его использования требуется загрузка различных файлов *.dll на клиентские машины.

      Delphi, dbExpress и MySQL объясняет, как использовать dbExpress для подключения к MySQL. Он также содержит предупреждение — dbExpress: Delphi 6 против Delphi 7 — не запускать одновременно Delphi 6 и Delphi 7 приложения на той же машине при доступе к базам данных Firebird — dbExpress *.dll несовместимы и вызовут ошибки.


      Жар-птица

      Firebird — это бесплатная версия Borland Interbase с открытым исходным кодом. Механизм базы данных SQL. Существует несколько различных способов доступа к таблицам

      • Компоненты Interbase (использует BDE)
      • ODBC/ADO (мне так и не удалось заставить это работать в Windows XP)
      • dbExpress (НЕ может иметь приложения Delphi 6 и Delphi 7 на одном компьютере)


      Использование компонентов Interbase

      Чтобы получить доступ к файлу *.gdb,

    • Установите следующие свойства в указанном порядке
      Компонент Свойство Значение Комментарии
      IBDatabase1 Имя базы данных Установите это в файл *.gdb или *.fdb
      Подключено Верно Это подключает базу данных
      IBTransaction1 DefaultDatabase IBDatabase1
      Активный Истинный
      IBTable1 База данных IBDatabase1
      Транзакция IBTransaction1 Выбирается автоматически
      Имя таблицы Выберите один из списка
      Активный Истинный
      Источник данных1 Набор данных IBTable1
      Включено Верно Значение по умолчанию
      DBEdit1 Источник данных Источник данных1
      Поле данных Выберите любое поле
      DBNavigator1 Источник данных Источник данных1
      VisibleButtons Отключите те, которые вам не нужны
      Если вы редактируете какой-либо параметр, а данные не отображаются, проверить IBDatabase1. Connected , IBTransaction1.Active и IBTable1.Active , в этой последовательности. (На самом деле, просто установив IBTable1.Active на True , ставь остальные)

      Чтобы автоматически подключиться к базе данных Firebird, установить следующее

    • IBDatabase1.LoginPrompt в ложь

      Чтобы подключиться к образцу базы данных Interbase, распространяемому вместе с Delphi, набор IBDatabase1.DatabaseName в

        MachineID:C:\Program Files\Common Files\Borland Shared\Data\employee.gdb
         

        Согласно сообщению группы новостей, TIBTable никогда не следует использовать с Клиент-серверные приложения — вместо этого используйте IBDataset . (Они оба основаны на TIBCustomDataSet ) Это отчасти потому, что TIBTable.Refresh не возвращает вставленные элементы. и IBDataset.Refresh будет (я предполагаю, что запрос выполняется повторно).


        ОДБК/АДО

        Чтобы получить доступ к базе данных Firebird через ODBC, вы должны сначала определите соединение ODBC (DSN). Выбирать Панель управления/Администрирование/Источники данных (ODBC)/Системный DSN/Добавить… Затем выберите драйвер Interbase. В диалоговом окне важны только эти 2 поля.

        После того, как вы создали DSN, вы можете протестировать его, повторно открыв определение (дважды щелкните или выберите Настроить… ), введите имя пользователя и пароль и нажмите Test Connect . К сожалению, это всегда не удавалось в моей системе Windows XP.

        Чтобы получить доступ к файлу *.gdb через ODBC/ADO (мне так и не удалось заставить это работать),

        • Добавьте эти компоненты — KADaoDatabase, KADaoTable, DataSource, DBGrid
        • Установить для KADaoTable1.Database значение KADaoDatabase1
        • Установить для DataSource1.DataSet значение KADaoTable1
        • Установить для DBGrid1.DataSource значение DataSource1
        Я получил много ошибок, связанных с информационным файлом рабочей группы , но, конечно, нет никакой помощи в том, что это может означать. Я предполагаю, что это связано с вышеописанным сбоем ODBC.
          KADaoDatabase1.UserName системная база данных
          KADaoDatabase1.Пароль мастер-ключ
          KADaoDatabase1.DatabaseType ОДБК
          KADaoDatabase1.База данных Выберите из списка псевдонимов базы данных ODBC. (Я предполагаю, что ваша система имеет по крайней мере один определенный.)
          KADaoDatabase1.LoginPrompt Установите это значение False, чтобы отключить диалоговое окно по умолчанию.
          KADaoDatabase1.OnLogin Добавление кода к этому событию также отключит диалоговое окно по умолчанию. (Жесткое кодирование идентификаторов пользователей и паролей считается проблема. )


        Ссылки

        Компьютерная лаборатория efg предоставляет Файлы DBF — с ADO или без него
        Содержит очень подробные пошаговые инструкции. о том, как подключиться к файлу *.dbf с помощью компонента TTable и компоненты Borland ADO. В обоих примерах используются модули данных .
        Автор: Роберт Клеменци — [email protected]
        URL-адрес: http://cpcug.org/ пользователь / Клеменци / технический / Базы данных / Дельфы / Database_Connections.html

        TurboDB для VCL: база данных Delphi

        TurboDB для VCL — это база данных для Delphi, написанный на Delphi, который поддерживает большую функцию SQL set и предлагает его через известные компоненты VCL для базы данных, Таблица, запрос и пакетное перемещение. TurboDB для VCL — идеальная замена для Paradox и dBase, чтобы внедрить современные технологии баз данных в ваше устаревшее приложение BDE.

        Наша база данных Delphi поддерживает не только все особенности этих устаревших продуктов, но предлагает ряд дополнительных возможности, а также делает миграцию безболезненной через совместимые интерфейсы.
        Компоненты, кроме Embarcadero BDE, не установлены. в операционной системе, ни необходимые параметры конфигурации. Ты контролировать полный доступ к базе данных непосредственно из приложения.

        TurboDB для VCL состоит из наших проверенных ядро базы данных, типичные компоненты VCL TdbTable, TdbQuery, TdbDatabase, TdbBatchMove, конструкторы для многих версий Delphi, C++ Builder, Borland/Embarcadero Developer Studio, а также обычные инструменты с документацией.

        Компоненты подходят для среды разработки привычным способом, а также программирование идентично известные компоненты доступа к данным VCL из BDE.

        :: Поддерживаемые средства разработки

        Этот движок базы данных поддерживает все Borland/CodeGear/Embarcadero. среды разработки от версии 6 до сегодняшнего дня. Это включает выпуски Turbo также. Исключения: Delphi 8 и RAD Studio. 2003.

        Начиная с Delphi XE 2, вы также можете скомпилировать настоящие 64-битные приложения, использующие TurboDB.

        Стандартные версии некоторых IDE не включают поддержку программирования баз данных и поэтому не подходит для TurboDB для VCL.

        Для Delphi Prism мы рекомендуем наш чистый .NET база данных ТурбоДБ для .NET.

        :: Системные требования

        TurboDB для VCL работает в 32-разрядной версии Windows с Windows 2000 и 64-разрядная версия Windows, начиная с Windows Vista — все выпуски поддерживается Microsoft без Windows Phone/Windows RT. Создание 32/64-битных программ зависит от вашего компилятора.

        :: Скачать пробную версию

        Почему бы вам не попробовать и не проверить? нашу базу данных для VCL с вашим проектом? Скачать бесплатную пробную версию версия прямо сейчас:

        TurboDB VCL для Delphi 6, 7, 2005, 2006, 2007, 2009, 2010, XE, XE2, XE3, XE4, XE5, XE6, XE7, XE8, 10 Сиэтл, 10. 1 Берлин, 10.2 Токио, 10.3 Рио, 10.4 Сидней, 11 и C++Builder 6, 2006, 2007, 2009, 2010, ХЕ, ХЕ2, ХЕ3, ХЕ4, ХЕ5, ХЕ6, ХЕ7, ХЕ8, 10 Сиэтл, 10,1 Берлин, 10,2 Токио, 10,3 Рио, 10,4 Сидней, 11

        Пробные версии можно использовать без каких-либо функциональных ограничение на 30 дней. Полную информацию о пробных версиях см. обратитесь к разделу «Загрузки».

         

        :: Особенности

        • Полная библиотека базы данных может опционально компилируется в приложение и требует менее 1 МБ во время выполнения. Таким образом, база данных практически невидима. конечному пользователю.
        • Большой набор функций SQL, включая DDL, внешние ключи, транзакции, надежное шифрование, сопоставления (сортировка после правил любого иностранного языка) и полнотекстовое индексирование.
        • Полностью запрограммирован в Delphi. Следовательно нет проблем с интерфейсом с ADO, OLE DB, dbExpress и т. д.
        • Все обычные компоненты доступа к данным VCL есть и работают как из BDE: TTdbDatabase, TTdbTable, TTdbQuery, TTdbBatchMove.
        • Мастера преобразования баз данных BDE и для импорта любой базы данных через ADO.
        • Удобный инструмент управления базой данных в том числе в упаковке.
        • Данные могут быть обменены со всеми TurboDB товары. Механизм базы данных идентичен тому, который используется в Студия ТурбоДБ.

        Полный список функций см. к матрице признаков.

        :: Область применения