MySQL 5.0. Библиотека программиста
Шрифт:
Установка дополнительных модулей Perl
Чтобы установить модули Perl DBI и Perl CGI, выполните следующие действия.
1. Скачайте дистрибутив пакета Perl Add-Ons. Для этого на веб-страниценайдите раздел XAMPP for Windows Add-Ons и в подразделе Perl щелкните на ссылке Installer.
2. После загрузки файла xampp-win32-perl-addon-xxx-xxx-installer. exe запустите его, дважды щелкнув на его значке.
3. Выберите язык установки Russian (рис. 4.15) и нажмите кнопку OK.
Рис. 4.15. Выбор языка установки
4. В начальном окне мастера установки (рис. 4.16) нажмите кнопку Далее.
5. В окне выбора папки установки (рис. 4.17) по умолчанию предлагается корневая папка XAMPP. Ничего не меняя, нажмите кнопку Далее.
6. После окончания установки нажмите кнопку Готово (рис. 4.18).
Итак, дополнительные модули Perl установлены. Теперь мы можем приступить к созданию приложений Perl.
Тестирование Perl
Чтобы проверить корректность функционирования интерпретатора Perl, создайте простейшее Perl-приложение. Для этого выполните следующие действия.
1. Запустите стандартную программу Windows Блокнот (Пуск → Все программы → Стандартные → Блокнот).
2. В окне программы Блокнот введите следующий код (рис. 4.19):#!»C:\Program Files\xampp\perl\bin\perl.exe»
print «Content-type: text/html; charset=windows-1251\n\n»;
print “Работа с MySQL”;
Внимание!
В первой строке любого сценария Perl после символов #! необходимо указать путь к интерпретатору Perl: «<Путь к корневой папке XAMPP>\perl\bin\perl.exe». Вывод текста или HTML-кода нужно предварять строкой print «Content-type: text/html; charsert = windows-1251\n\n»;, которая указывает тип выводимой информации.
3. Для сохранения файла нажмите комбинацию клавиш Ctrl+S. В стандартном окне Windows Сохранить как откройте корневую папку XAMPP, а в ней – папку cgi-bin. Введите имя файла: test.pl и нажмите кнопку Сохранить.
4. Запустите Internet Explorer (Пуск → Все программы → Internet Explorer) или любой другой браузер. В адресной строке браузера введите следующий адрес: http:// localhost/cgi-bin/test.pl. Появление текста «Работа с MySQL» (рис. 4.20) на вебстранице означает, что Perl-приложения выполняются нормально.
Рис. 4.20. Результат выполнения приложения
Аналогичная последовательность действий используется для создания всех последующих сценариев Perl в данном разделе. Приступим к разработке приложения, взаимодействующего с базой данных MySQL.
Подключение к базе данных
Прежде чем использовать команду подключения к базе данных MySQL, укажем интерпретатору Perl, что необходимо использовать модуль Perl DBI. Для этого включим в сценарий командуuse DBI;
Для подключения к базе данных используется метод
connect(«DBI:mysql:database=<Имя базы данных>;host=<Имя
хоста>[;port=<Номер порта>]»,»Имя
пользователя»,»Пароль»[,<Режим обработки ошибок>]);Метод connect создает
соединение с базой данных и возвращает дескриптор соединения – указатель на объект, отвечающий за взаимодействие с базой данных и реализующий все методы работы с БД. Если установить соединение не удалось, метод connect возвращает значение undef.Примечание
Необязательный параметр port по умолчанию принимает значение 3306. Режим обработки ошибок мы обсудим в подразделе «Обработка ошибок».
Например, вызов метода my $dbh = DBI —»
my $dbh = DBI ->
connect(«DBI:mysql:database=SalesDept;host=localhost»,
“username”,”userpassword”);осуществляет подключение к серверу MySQL, работающему на локальном компьютере, используя имя пользователя username и пароль userpassword. При этом база данных SalesDept выбирается в качестве текущей. Дескриптор соединения сохраняется в переменной $dbh.
Совет
В целях защиты от несанкционированного доступа рекомендуется подключаться к базе данных не от имени пользователя root, а от имени специально созданного пользователя с минимально необходимыми правами доступа. О регистрации пользователей и настройке прав далее будет рассказано подробно.
После окончания работы с базой данных отключимся от нее с помощью метода disconnect;
Рассмотрим пример приложения, которое подключается к базе данных и выводит диагностическое сообщение. Создайте в папке cgi-bin корневой папки XAMPP файл connect.pl и введите в него код, представленный в листинге 4.10.
Листинг 4.10.
Подключение к базе данных
#!»C:\Program Files\xampp\perl\bin\perl.exe»
print «Content-type: text/html; charset=windows-1251\n\n»;
#Подключаем модуль DBI
use DBI;
#Подсоединяемся к базе данных
my $dbh = DBI -> connect(“DBI:mysql:database=SalesDept;host=localhost”,
“username”,”userpassword”);
if(!$dbh)
{
print(“Ошибка доступа к базе данных. Приносим свои извинения”);
}
else
{
print “Подключение выполнено успешно”;
}
#Отсоединяемся от базы данных
$dbh->disconnect;
Сохраните файл connect.pl, а затем наберите в адресной строке браузера адресПри успешном подключении на веб-странице появится соответствующее сообщение (рис. 4.21).
После подключения к серверу MySQL вы можете получать данные из базы и записывать их в базу. В следующем подразделе вы узнаете о сохранении данных.
Ввод данных в базу
В этом подразделе приводятся сведения о том, как создать приложение, которое записывает в базу введенные пользователем данные. Вначале рассмотрим метод, позволяющий выполнить SQL-команду, не предполагающую получения данных из базы (например, INSERT, UPDATE или DELETE):do(«<Текст команды>»[, <Неиспользуемый параметр>,<Привязываемые параметры>])