Delphi и Mysql. C чего начать? (исходники)Источник: IT World
Я полагаю, что у вас уже установлен Delphi и все работает замечательно. Чтобы база MySQL была доступна из Delphi, я рекомендую скачать и установить объекты, которые упростят работу с этой базой. На самом деле, в пакете Delphi 7 уже есть некоторые компоненты, в закладке Internet, но те, которые я использую - намного удобнее. Библиотека доступна по этому адресу: http://prdownloads.sourceforge.net/directsql/DirectMysqlObjects.zip?download Чтобы установить эти компоненты, вам нужно будет разархивировать ZIP файл в директорию {$Delphi}/lib/. uMySqlVio, uMysqlCT, uMysqlClient, uMysqlHelpers Вот и все, что нужно для установки. Содинение с базойНадеюсь, у вас не возникло проблем с установкой и все работает отлично. Дальше я покажу вам, как подсоединяться к базе, как выполнять SQL запросы и как получать данные. Для начала запустите Delphi и создайте новое приложение. Подключите интерфейсы uMySqlVio, uMysqlCT, uMysqlClient, uMysqlHelpers и сохраните проект. Код:
Еще нам понадобится один объект для выполнения SQL запросов: Код:
Пишем код для подключения к базе и выполнения запроса. Двойной клик на главной форме и в процедуре OnCreate пишем: Код:
В процедуру OnDestroy добавляем такой код: Код:
Поместите новую кнопку в любое место формы, подпишите её 'Connect' и назовите её ButtonConnect. Длинный и плохой способ:
Мой любимый способ: Код:
Аргументы этой функции располагаются в таком порядке: host, username, password, db, port, socket, try, sockets, client, flag Сам запрос ничем не отличается от такого же, написанного на PhP. Код:
Таким образом, строка кода, которую вы видите выше, присваивает результат выполнения запроса переменной MySQLResult. В запросе извлекается запись из таблицы admin_users. В логической переменной OK сохранен флаг выполнения, то есть, значение true свидетельствует об успешном выполнении, а false означает ошибку. Теперь можно получить значение поля: Код:
Как можно было догадаться, это скрипт проверки имени пользователя и пароля. Осталось только сделать проверку. Я решил сделать это таким образом, что все проверяется в одном операторе IF, и конкретная причина не выдается: Код:
Здесь мы проверили жестко закодированное имя пользователя dummy_username с тем, которое возвратил запрос. Пароль проверяется таким же образом. Это не лучший пример программирования, к тому же рекомендуется шифровать данные с помощью функции MD5. Кстати, для работы с ней, вам поможет ресурс www.torry.net. Это был всего лишь пример использования Delphi! |