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

Здесь есть возможность читать онлайн «Виктор Гольцман - MySQL 5.0. Библиотека программиста» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

MySQL 5.0. Библиотека программиста: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «MySQL 5.0. Библиотека программиста»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

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

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

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «MySQL 5.0. Библиотека программиста», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

#Завершаем работу

die();

}

Если при подключении к базе данных произойдет ошибка, в файл mysqlerror. log, находящийся в папке cgi-bin, будет записано сообщение, содержащее дату и время, номер и описание ошибки. Например, если база данных SalesDept (Отдел продаж) была удалена, в файле появится запись вида Sat Jun 28 11:15:00 2008 1049 Unknown database \'salesdept\'.

Далее вы узнаете о том, каким образом приложение Perl работает с данными, полученными из БД с помощью запроса.

Выполнение запроса к базе данных

Для поиска информации в базе данных необходимо последовательно вызвать методы

prepare(«<���Текст запроса>»)

и

execute()

Метод prepare() обеспечивает подготовку запроса для последующего выполнения и возвращает дескриптор команды – указатель на объект, реализующий все операции, связанные с запросом: выполнение запроса, обработку результатов запроса и др. Далее вызывается метод execute() дескриптора команды, который выполняет запрос и возвращает значение TRUE в случае успеха или значение undef в случае ошибки. Например, чтобы получить все данные из таблицы Products (Товары), выполните команды

my $query = $dbh->prepare(«SELECT * FROM Products»); $query -> execute();

В переменной $query хранится дескриптор команды.

...

Примечание

Если требуется выполнить динамический запрос, содержащий переменные величины, вы можете воспользоваться привязкой параметров, о которой было сказано в подразделе «Ввод данных в базу». А именно, в тексте команды эти величины нужно заменить символами? а их значения передать в качестве параметров метода execute(). Например, получить список товаров, цена которых не превосходит значения переменной $max_price, можно следующим образом:

my $query = $dbh->prepare(SELECT * FROM Products

WHERE price <= ?);

$query -> execute($max_price);

Для получения доступа к значениям в результате запроса вы можете использовать метод

fetchrow_hashref([<���Регистр>])

или

fetchrow_arrayref()

Метод fetchrow_hashref() получает очередную строку из результата запроса, преобразует ее в ассоциативный массив (хеш) и возвращает ссылку на этот массив. Вы можете указать в качестве аргумента значение NAME_uc или NAME_lc, чтобы привести имена столбцов к верхнему или, соответственно, нижнему регистру. После обработки результатов запроса освободить память, занятую под массив полученных запросом данных, можно с помощью метода

finish()

Рассмотрим работу с запросом на примере вывода списка товаров, то есть данных из таблицы Products (Товары). Создайте в папке cgi-bin корневой папки XAMPP файл input.pl, содержащий код, представленный в листинге 4.12. Листинг 4.12.Получение информации и отображение ее на странице

#!»C:\Program Files\xampp\perl\bin\perl.exe»

print «Content-type: text/html; charset=windows-1251\n\n»;

use DBI;

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

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

«username»,»userpassword»);

if(!$dbh)

{

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

die();

}

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

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

#Выполняем запрос к базе данных

my $query = $dbh->prepare(«SELECT * FROM Products»);

my $qresult = $query -> execute();

if(!$qresult)

{

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

die();

}

#Создаем строку для вывода результатов запроса

my $pagecontent=””;

#Для каждой строки из результата запроса

#записываем данные в хеш и сохраняем ссылку на хеш

#в переменной $product

while(my $product = $query -> fetchrow_hashref(«NAME_uc»))

{

#Выводим элементы хеша

#с индексами DESCRIPTION, DETAILS и PRICE

$pagecontent.=»

».$product->{DESCRIPTION}.» ».$product->{DETAILS}.» ».$product->{PRICE}.» \n»;

}

#Освобождаем ресурсы

$query -> finish();

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

$dbh->disconnect();

#Выводим полученные данные

print “

Список товаров

«.$pagecontent.»

Наименование Описание Цена
“;

Открыв в браузере страницу http://localhost/cgi-bin/output.pl, вы увидите список товаров (рис. 4.24).

Рис. 4.24.Вывод информации на странице

Отметим, что если в результате запроса присутствуют несколько столбцов с одинаковыми именами (это возможно в случае получения информации из нескольких таблиц), то метод fetchrow_hashref() предоставляет доступ только к последнему из этих столбцов. Кроме того, порядок элементов в хеше может отличаться от порядка столбцов в таблице; в этом легко убедиться, если вывести значения всех полей с помощью цикла foreach:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «MySQL 5.0. Библиотека программиста»

Представляем Вашему вниманию похожие книги на «MySQL 5.0. Библиотека программиста» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


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

Обсуждение, отзывы о книге «MySQL 5.0. Библиотека программиста» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x