Итак, поскольку один из моих любимых языков программирования – Delphi, я решил рассмотреть пример подключения из клиентского VCL приложения. Итак, что нам понадобится?
-Установленная программа-сервер MySQL на локальный компьютер;
-Созданная база данных на программе-сервере MySQL;
-IDE Delphi, у меня на момент написания была Delphi XE7;
В данной статье мы будем использовать технологию dbExpress – она относительно простая, но имеет один недостаток – не поддерживает двунаправленные курсоры. В частности, в моем случае это вылилось в отказ отображать данные в элементе DBGrid, когда я использовал для хранения данных элемент ClientDataSet. Эта проблема решилась, когда я вместо ClientDataSet использовал SimpleDataSet.
Подготовительная работа по подключению
Также нам понадобится провести подготовительную работу, а именно в Delphi указать через Data Explorer настройки нашего сервера и базы данных. Итак, жмем (View / Data Explorer)
Во всплывающем окне указываем имя подключения. Я сделал имя MyDataBaseConnection.
Далее, жмём Modify Connection
Далее, я заполнил всё следующим образом…
localhost потому что на локальном компьютере разместил ранее программу сервер MySQL, MyDataBase потому что создали ранее базу данных MyDataBase в программе MySQL WorkBench;
Пользователь, он же суперпользователь, у нас пока один root. Пароль этого пользователя masterkey
Тестируем соединение…
Основная работа по подключению
Итак, создадим VCL приложение (File New Vcl Forms…) и разместим на нём следующие компоненты
DBGrid для визуализации данных таблицы нашей базы данных;
SQLConnection – название говорит само за себя;
SimpleDataSet – для хранения наборов данных;
DataSource – для вспомогательных целей (показывать DBGrid что отображать…);
DBNavigator – для перемещения курсора по таблице и других вспомогательных целей;
После подключения можем настраивать компоненты – начнем с SQLConnection1, в объектном инспекторе, в свойстве ConnectionName видим следующую картину – видим в списке MyDataBaseConnection, который мы создавали ранее в Data Explorer. Выбираем созданное соединение. После выбора нужно установить свойство Connected в True (на рисунке этого не сделано).
Что касается Simple Data Connection – здесь будем указывать 2 параметра – Connection и DataSet, начнем с первого. В свойстве Connection ставим SQLConnection1
Раскрываем свойство DataSet, здесь нам нужно в CommandType указать ctTable, а в Command text выбрать из впадающего списка ашу таблицу, у нас она одна, students.
Свойство Active раздела DataSet нужно включить в True, а свойство Connected компонента SimpleDataSet1 также в True;
Компонент Data Source – указываем в свойстве DataSet – значение SimpleDataSet1
И, наконец, последний элемент DBGrid, то есть собственно “отображатель данных” – ставим в свойстве DataSource – DataSource1. И ура ! Наши данные появляются!!!
Но, как видно из таблицы DBGrid – у нас небольшая проблема с отображением. То есть, поле students слишком широкое. Чтобы поправить этот момент, делаем так (см. рисунок ниже)
Итак, настраиваем значение width, например выбрав 100 и получаем отличную таблицу, которая отображается прямо из базы данных программы-сервера MySQL.
Подключите также DBNavigator, указав для него DataSource – DataSource1. На этом пост завершен – в следующем посте – будем учиться работать с редактированием записей.