MyBooks.club
Все категории

Виктор Гольцман - MySQL 5.0. Библиотека программиста

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Виктор Гольцман - MySQL 5.0. Библиотека программиста. Жанр: Программирование издательство неизвестно,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
MySQL 5.0. Библиотека программиста
Издательство:
неизвестно
ISBN:
нет данных
Год:
неизвестен
Дата добавления:
17 сентябрь 2019
Количество просмотров:
249
Читать онлайн
Виктор Гольцман - MySQL 5.0. Библиотека программиста

Виктор Гольцман - MySQL 5.0. Библиотека программиста краткое содержание

Виктор Гольцман - MySQL 5.0. Библиотека программиста - описание и краткое содержание, автор Виктор Гольцман, читайте бесплатно онлайн на сайте электронной библиотеки mybooks.club
Эта книга предназначена для всех, кто желает освоить СУБД MySQL. Для ее чтения вам не нужны никакие специальные знания – достаточно быть пользователем Windows. Вы узнаете, как установить и запустить MySQL, как создать собственную базу данных, как работать с данными при помощи команд SQL, как администрировать базу данных и оптимизировать ее работу. Разработчики веб-приложений на языках PHP, Perl и Java найдут в этой книге полезные сведения по использованию базы данных MySQL в соответствующих приложениях. Для всех операций, которые вам предстоит выполнить, приводятся подробные пошаговые инструкции, все основные действия поясняются на примере учебной базы данных.

MySQL 5.0. Библиотека программиста читать онлайн бесплатно

MySQL 5.0. Библиотека программиста - читать книгу онлайн бесплатно, автор Виктор Гольцман

“username”,”userpassword”);

if(!$dbh)

{

print(“Ошибка доступа к базе данных. Приносим свои извинения”);

}

else

{

print “Подключение выполнено успешно”;

}

#Отсоединяемся от базы данных

$dbh->disconnect();

Сохраните файл connect.pl, а затем наберите в адресной строке браузера адрес http://localhost/cgi-bin/connect.pl. При успешном подключении на веб-странице появится соответствующее сообщение (рис. 4.21).

Рис. 4.21. Результат подключения к базе данных

После подключения к серверу MySQL вы можете получать данные из базы и записывать их в базу. В следующем подразделе вы узнаете о сохранении данных.

Ввод данных в базу

В этом подразделе приводятся сведения о том, как создать приложение, которое записывает в базу введенные пользователем данные. Вначале рассмотрим метод, позволяющий выполнить SQL-команду, не предполагающую получения данных из базы (например, INSERT, UPDATE или DELETE):

do(«<Текст команды>»[, <Неиспользуемый параметр>,<Привязываемые параметры>])

Метод do() возвращает количество строк, с которыми была выполнена операция, значение -1, если количество строк неизвестно, и значение undef в случае ошибки.

...

Примечание

Если SQL-команда была выполнена успешно, но не произвела действий с одной строкой, то метод do() возвращает значение E0E, которое рассматривается как числовое значение 0 и как логическое значение TRUE.

Единственным обязательным параметром метода do() является текст SQL-команды, которую необходимо выполнить. Например, установить кодировку можно следующим образом:

$dbh -> do(«SET NAMES cp1251»);

...

Совет

Установка кодировки перед началом работы с данными позволяет избежать некорректного отображения и сохранения в базе данных символов русского алфавита. Была выбрана кодировка Windows (CP-1251), так как именно в ней был создан сценарий input.pl.

Привязка параметров используется в случае, когда необходимо выполнить динамическую SQL-команду, содержащую переменные величины. В тексте команды эти величины нужно заменить символами? а их значения передать в качестве параметров метода do(). Например, пусть имя, телефон и адрес клиента хранятся, соответственно, в переменных $name, $phone и $address. Записать эти данные в базу можно с помощью вызова метода

$dbh – > do(«INSERT INTO Customers (name,phone,address)

VALUES (?,?,?)»,

undef,$name,$phone,$address);

Перед выполнением SQL-команды INSERT вместо знаков вопроса будут подставлены значения переменных $name, $phone и $address (неиспользуемому параметру было присвоено значение undef). При этом интерпретатор Perl автоматически вставляет кавычки там, где это необходимо, экранирует спецсимволы и т. п.

В качестве примера использования метода do() рассмотрим форму саморегистрации нового клиента, в которой клиент может ввести свое имя, телефон и адрес. Помимо метода do(), для создания такого приложения нам потребуется дополнительный модуль Perl CGI и функция param(), которая возвращает список значений, введенных пользователем в поля формы. Функция param() позволяет объединить вывод формы и обработку введенных данных в одном сценарии: если функция вернула непустое значение, значит, нужно обработать введенные пользователем данные, а если пустое – отобразить форму для ввода данных. Если же в качестве аргумента функции param() указывается имя поля формы, то функция вернет значение из этого поля.

Итак, в папке cgi-bin корневой папки XAMPP создайте файл input.pl, содержащий код, представленный в листинге 4.11.

Листинг 4.11. Ввод данных

#!”C:Program Filesxamppperlbinperl.exe”

print “Content-type: text/html; charset=windows-1251nn”;

#Подключаем модуль DBI

use DBI;

#Подключаем модуль CGI

use CGI ':all

#Если список значений формы пуст, выводим форму

if(!param())

{

print «

<html>

<head>

<title>Работа с MySQL</title>

</head>

<body>

<h1>Пожалуйста, заполните следующие поля:</h1>

<!– Создаем форму для ввода данных –>

<!– Обрабатывать введенные данные будет этот же сценарий – input.pl –>

<form method='post' action='input.pl'>

<table>

<!– Создаем поле для ввода имени заказчика –>

<tr>

<td>Ваше имя:</td>

<td><input type='text' name='CustomerName' value=''></td>

</tr>

<!– Создаем поле для ввода телефона заказчика –>

<tr>

<td>Телефон:</td>

<td><input type='text' name='CustomerPhone' value='(495)'></td>

</tr>

<!– Создаем поле для ввода адреса заказчика –>

<tr>

<td>Адрес:</td>

<td><input type='text' name='CustomerAddress' value=''></td>

</tr>

</table>

<br>

<!– Создаем кнопку для подтверждения данных –>

<input type='submit' value='Отправить'>

</form>

</body>

</html>”;

}

#Если список значений формы непуст, сохраняем эти значения

else

{

#Подсоединяемся к базе данных

my $dbh = DBI ->

connect(«DBI:mysql:database=SalesDept;host=localhost»,

«username»,»userpassword»);

if (!$dbh)

{

print «Ошибка доступа к базе данных. Приносим свои извинения”;

die();

}

#Устанавливаем кодировку CP-1251

$dbh->do(«SET NAMES cp1251»);

#Записываем данные о клиенте в таблицу Customers (Клиенты)

#param('CustomerName'), param('CustomerPhone') и param('CustomerAddress') –

#значения, полученные из полей формы с именами

#CustomerName, CustomerPhone и CustomerAddress

my $insert = $dbh -> do(«INSERT INTO Customers (name,phone,address)

values (?, ?, ?)»,

undef,

param('CustomerName'), param('CustomerPhone'), param('CustomerAddress'));

if(!$insert)

{

print “Ошибка доступа к базе данных. Приносим свои извинения”;

die();

}

#Отсоединяемся от базы данных

$dbh->disconnect();

#Выводим итоговое сообщение

print «<html>

<head>

<title>Работа с MySQL</title>

</head>

<body>

<h3>Поздравляем! Регистрация завершена успешно</h3>

</body>

</html>”;

}

Для запуска этого приложения наберите в адресной строке браузера адрес http://localhost/cgi-bin/input.pl. На экране появится веб-форма (рис. 4.22).

Рис. 4.22. Форма ввода данных

Введите в поля формы какие-либо значения и нажмите кнопку Отправить. Для обработки введенных данных вызовется тот же самый сценарий input.pl, однако на этот раз будет выполнена вторая часть сценария, следующая после ключевого слова else (см. листинг 4.11). Эта часть сценария выполняет SQL-команду INSERT. Если команда была выполнена успешно, вы увидите на странице следующее сообщение (рис. 4.23).

Рис. 4.23. Результат сохранения данных

Если же при подключении к базе данных или при выполнении SQL-команды произошла ошибка, вы увидите на странице сообщение «Ошибка доступа к базе данных. Приносим свои извинения». Чтобы получить подробную информацию об ошибке, откройте корневую папку XAMPP, в ней – папку apache, затем папку logs. В папке logs откройте с помощью программы Блокнот файл error.log. В одной из последних строк этого файла вы найдете описание ошибки.

Если же вы используете Perl-хостинг и не имеете доступа к журналу ошибок, то в обработке ошибок вам поможет следующий подраздел.

Обработка ошибок

Вы уже знаете, что при подключении к базе данных можно задать режим обработки ошибок. Режим определяется двумя параметрами:

• PrintError. Если этому параметру присвоено значение 1, то при возникновении ошибки выводится сообщение об ошибке;

• RaiseError. Если этому параметру присвоено значение 1, то при возникновении ошибки выводится сообщение об ошибке и сценарий завершает работу.

Чтобы реализовать собственный алгоритм обработки ошибок, отключите системную обработку ошибок, присвоив обоим параметрам значение 0, например:

my $dbh = DBI -> connect(«DBI:mysql:database=SalesDept;host=localhost»,

“username”,”userpassword”,

{PrintError=>0,RaiseError=>0});

Для получения информации о возникшей ошибке предназначены методы


Виктор Гольцман читать все книги автора по порядку

Виктор Гольцман - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


MySQL 5.0. Библиотека программиста отзывы

Отзывы читателей о книге MySQL 5.0. Библиотека программиста, автор: Виктор Гольцман. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.