Возможности языка Perl для работы с MySQL

38656
знаков
19
таблиц
0
изображений

4. Возможности языка Perl для работы с MySQL

сервером.

При написании программы к данной работе выбран язык Perl, т. к. сегодня MySQL более широкое распространение получил на Web-серверах. А Perl как нельзя лучше других языков подходит для написания CGI-приложений. Взаимодействие сценария на языке Perl с MySQL можно изобразить схемой:

Сценарий Perl–>DBI –>DBD::MySQL–>Cервер MySQL.

DBI обеспечивает единый интерфейс взаимодействия с различными системами управления базами данных. А DBD связывает этот интерфейс непосредственно с конкретной СУБД. В нашем случае это mysql. Для того, чтобы программа на Perl могла общаться и работать с базой данных, необходимо подключить модуль DBI и драйвер DBD. Это выполняется следующими операторами:

use DBI; use DBD::mysql;

Для того чтобы выполнять SQL запросы к базе данных, нужно установить логическое соединение с MySQL. Это выполняется при помощи метода объекта DBI. При этом он возвращает объект (дескриптор) соединения, который будет использоваться для непосредственного общения с базой данных.

$dbh = DBI->connect('DBI:mysql:dbname= GRYADKA; host= 127.0.0.1; port=3306','','',0);

Вызывая метод connect, ему передаются некоторые параметры. Первый параметр определяет свойства соединения.

Эта строка имеет следующую структуру:

"dbi:<имя DBD>:dbname= <имя базы данных>; host=<имя хоста>; port=<номер порта>"

Далее в методе connect определяются имя пользователя, пароль и флаги соединения.

Существует два способа работы с базами данных MySQL. Первый — так называемый механизм курсоров, а второй, соответственно, без использования таковых.

Курсоры — это объекты Perl, которые обеспечивают последовательный доступ к результатам запросов.

Каждый курсор отвечает за закрепленный за ним запрос.

$cur = $dbh->prepare('select * from MAIN;');

$cur — это курсор, который для начала следует выполнить, используя метод execute:

$cur->execute;

Теперь, после выполнения запроса, чтобы получить результат запроса, используется метод fetchrow_array. Он поочередно возвращает массив полей результативной виртуальной таблицы.

Очень часто бывает необходимо подготовить запрос и после, при его выполнении, передавать ему различные данные. Это довольно просто решается при помощи механизма placeholders:

$cur = $dbh->prepare('insert into MAIN values(?,?)');

где вопросительные знаки следует заменить на значения переменных, переданных в качестве параметров метода execute:

$a00 = 2; $a01 = 'second record'; $cur->execute($a00, $a01);

Для того чтобы закрыть курсор, необходимо выполнить метод finish.

$cur->finish;

Курсоры очень удобный момент в технологии DBI. Однако можно обойтись и без них. Существует множество методов, которые вполне неплохо заменяют курсоры:

selectrow_array — возвращает одну строку запроса в виде массива;

selectall_arrayref — возвращает весь ответ сервера в виде массива, ссылка на массивы;

do — выполняет запрос, ничего не возвращая (очень удобно при работе с insert, update и пр.)

Для того чтобы разорвать соединение с MySQL, необходимо выполнить метод disconnect.

$dbh->disconnect;

Заключение.

 

В процессе написания данной работы были выяснены следующие свойства MySQL сервера:

·  Многопоточность. Поддержка нескольких одновременных запросов.

·  Оптимизация связей с присоединением многих данных за один проход.

·  Записи фиксированной и переменной длины.

·  Гибкая система привилегий и паролей.

·  До 16 ключей в таблице. Каждый ключ может иметь до 15 полей.

·  Поддержка ключевых полей и специальных полей в операторе CREATE.

·  Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени.

·  Интерфейс с языками C и perl.

·  Основанная на потоках, быстрая система памяти.

·  Утилита проверки и ремонта таблицы (isamchk).

·  Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках.

·  Псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице.

·  Все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей.

·  Легкость управления таблицей, включая добавление и удаление ключей и полей.

Итак, популярность MySQL сервера определяется не только тем, что пакет распространяется бесплатно и имеет высокую производительность, но ещё и тем, что имеет множество вышеперечисленных достоинств, многих из которых нет у других СУБД.

И виртуальный магазин, и сервер знакомств, и всевозможные сайты, предоставляющие платные услуги, — все нуждаются в возможности обрабатывать и хранить большие объемы информации. MySQL предоставляет всем эту возможность совершенно бесплатно. Это действительно одна из самых мощных, быстрых и надежных СУБД.

В ходе выполнения курсовой работы была написана программа, которая представляет собой Интернет-каталог. Она иллюстрирует возможности MySQL сервера, возможности интеграции MySQL c сетью Internet, что на сегодня весьма актуально. Созданная программа может использоваться в качестве Интернет-каталога в Интернет-магазине.

Список литературы

1.   М. Каба. MySQL и Perl – СПб.: Питер, 2001.

2.   А. Паутов. Документация по MySQL.

3.   М. Грубер. Понимание SQL.

4.   Материалы интернет-сайтов:

www.mysql.com

www.infocity.kiev.ua


Информация о работе «MYSQL server»
Раздел: Информатика, программирование
Количество знаков с пробелами: 38656
Количество таблиц: 19
Количество изображений: 0

Похожие работы

Скачать
70189
1
170

... Apache на русском языке: Если открылась начальная страница, значит Apache установлен правильно. ● Перейдите в окно Web-сервера Apache с помощью Панели задач операционной системы Windows и завершите работу сервера с помощью кнопки [X] в правом верхнем углу окна. 1.3. Установка PHP Загрузить дистрибутивов PHP можно с официальной страницы http://www.php.net/downloads.php из секции Windows ...

Скачать
36550
1
31

... стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем. Использование UML не ограничивается моделированием программного обеспечения. Его также используют для моделирования бизнес-процессов, системного проектирования и отображения ...

Скачать
50516
1
25

... высокого быстродействия. Их реализация существенно снижает скорость сервера. Эти возможности не являются критичными при создании web-приложений, что в сочетании с высоким быстродействием и малой ценой позволило серверу приобрести большую популярность.   3.2. Примеры использования PHP совместно с MySQL   3.2.1. Работа с формами В этом примере показано как в PHP легко обрабатывать данные с ...

Скачать
32804
0
25

... набрать: mysql>use testbase; База данных создана: 1.4 Выбор базы данных. Функция mysql_select_db До того как послать первый запрос серверу MySQL, необходимо указать, с какой базой данных мы собираемся работать. Для этого предназначена функция mysql_select_db: bool mysql_select_db(string $database_name [,resource $link_identifier]) Она уведомляет PHP, что в дальнейших ...

0 комментариев


Наверх