Доступ к базам данных с помощью языка рнр. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Доступ к базам данных с помощью языка рнр.



Основное отличие от CGI -скриптов – это то, что в CGI -программах вы сами пишете выводимый HTML -код, а, используя PHP – вы встраиваете свою программу в готовую HTML -страницу.

Отличие PHP от JavaScript состоит в том, что PHP -скрипт выполняется на сервере, а клиенту передается результат работы, тогда как в JavaScript -код полностью передается на клиентскую машину и только там выполняется.

Любители Internet Information Server найдут, что PHP очень похож на Active Server Pages (ASP), а энтузиасты Java скажут, что PHP похож на Java Server Pages (JSP). Все три языка позволяют размещать код, выполняемый на Web -сервере, внутри HTML страниц.

Обычно PHP используется для следующих целей: (1) выполнение системных функций (создание, чтение, запись файлов, работа с каталогами, изменение прав доступа); (2) сбор данных с помощью форм (сохранение данных в файле, отправка данных по электронной почте, возврат обработанных данных пользователю); (3) доступ к базам данных и создание web -интерфейса для добавления, удаления и изменения элементов в базе данных; (4) запись на компьютер пользователя и работа с файлами «cookie»; (5) аутентификация пользователя; (6) создание изображений «на лету»; (7) шифрование данных.

PHP версии 4 содержит подключаемые модули с наборами функций для поддержки следующих баз данных:

1. MySQL

2. Sybase

3. Унифицированные ODBC

4. Microsoft SQL Server

5. Oracle и Oracle 8

6. PostgreSQL

7. dBASE

8. Informix

9. InterBase

10. mSQL

11. нереляционные базы данных типа “ dbm ”, “ Hyperwave ”

Краткое описание основных функций для работы с MySQL:

mysql _ connect -- открывает соединение с MySQL сервером

mysql_close -- закрывает MySQL соединение

mysql _ list _ dbs -- Показывает список доступных Баз Данных на сервере

mysql _ list _ tables -- Показывает список таблиц в базе данных MySQL

mysql _ select _ db -- Выбирает Базу Данных MySQL

mysql _ query -- Отправляет SQL -запрос на MySQL

mysql _ fetch _ field -- Получает информацию о столбце из результата

mysql _ fetch _ row -- выбирает столбец данных из результата, и связывает его с определенным идентификатором результата (индексом элемента массива). Запрос возвращается как массив. Каждый столбец результата хранится в элементах массива, пронумерованного с нуля.

mysql_fetch_array – является расширенной версией функции mysql_fetch_row(). Кроме того, что она сохраняет данные в пронумерованных элементах, результатного массива, она также сохраняет ассоциативную связь, используя имена полей как ключи.

mysql_result – возвращает содержимое одной ячейки из установленного результата MySQL

mysql _ error -- Возвращает текст сообщения об ошибке предыдущей операции MySQL

Подключение к базе данных осуществляется следующим образом (файл с расширением «. php»):

<?

$connection = @mysql_connect (“localhost”,”MyUserName”,”MyPassword”) or

die (“Невозможно подключиться к серверу баз данных!”);

if ($ connection) {

$ msg = “Подключение к серверу баз данных произведено.”

}

// далее идет работа с базами данных

// mysql_close($connection);

?>

<HTML><HEAD><title>Example</title></HEAD>

<BODY>

<? echo “$msg”;?>

</BODY></HTML>

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

$ dbs = @ mysql _ list _ dbs ($ connection) // получение списка баз данных на MySQL

$ i = 0;

while ($ i < mysql _ num _ rows ($ dbs)) { // выбираем строку из списка

$db_name[$i] = mysql_tablename ($dbs, $i);

// получаем имя базы данных в элемент массива

$i++;

}

$db_name = “testDB”;

$db = @mysql_select_db ($db_name, $connection)

or die (“Невозможно выбрать базу данных!”);

$table_name = “test_table”

$sql = “SELECT id, format, title FROM $table_name ORDER BY id”;

$result = @mysql_query ($sql, $connection)

or die (“Невозможно выполнить запрос!”);

$row = mysql_fetch_array($result);

Далее можно последовательно обрабатывать массив row для вывода полученных значений в стиле HTML -таблицы или как-нибудь иначе…

 

Иные технологии.

Пакет WOW (Web - Oracle - Web) предназначен для обработки запросов от Web -сервера к серверу Oracle с генерацией динамических HTML -документов. Разработчик приложений, использующий WOW, оперирует только с родным языком Oracle – PL / SQL, являющимся процедурным расширением языка SQL. Это обуславливает высокую эффективность разработки приложений. Обработка созданных приложений непосредственно в сервере Oracle определяет высокую скорость исполнения приложений.

Основная идея пакета WOW - преобразование запроса к Web -серверу в вызов определенной процедуры PL / SQL. В качестве параметров процедуры, используются данные из запроса к Web -серверу. Кроме этого, язык PL / SQL дополняется функциями вывода различных данных в формате HTML.

 

СУБД MySQL.

MySQL – клиент-серверная система управления реляционными базами данных, которая содержит многопоточный SQL-сервер, обеспечивающий поддержку различных вычислительных машин баз данных, а также несколько различных клиентских программ и библиотек, средства администрирования и широкий спектр программных интерфейсов. Разработкой и сопровождением системы занимается компания MySQL AB (Швеция, David Axmark).

Характеристики СУБД

1. SQL СУБД (реляционная), быстрая, но не оптимизированная под поиска и добавления, если предстоят частые изменения.

2. Стандарты: entry level SQL92, ODBC levels 0-2.

3. Лицензия - GPL / LGPL. Для хостинга лицензия не нужна.

4. Написана на C и C ++. Базовая платформа: Solaris 2.7-2.8, SuSE Linux 7.1 (ядро 2.4, ReiserFS), но работает также в других ОС.

5. Многопотоковая.

6. API для C, C ++, Java, Eiffel, Perl, PHP, Python, и др.

7. Парольная защита.

8.

9. Таблицы в виде B - tree со сжатием индекса. До 32 индексов на таблицу. До 16 колонок на индекс.

10. По умолчанию MySQL -таблицы имеют максимальный размер около 4 Гб.

11. Записи переменной длины. Есть примеры использования MySQL с 60000 таблиц и 5 миллиардами строк.

12. Поддержка koi 8- r и cp 1251 (сортировка, сравнение и т.д.).

13. Клиенты могут соединяться по TCP / IP (можно использовать только, если никто не подслушивает) или Unix socket

Имеются расширения к ANSI SQL 92.

Отсутствующие возможности ANSI SQL 92:

1. Вложенные подзапросы

2. хранимые процедуры и тригеры (тригеры не планируются совсем)

3. Внешние ключи

4. Представления

Основные модули СУБД

1. mysql – клиентская часть СУБД. Она обеспечивает интерфейс командной строки с СУБД MySQL, и возможность неинтерактивной пакетной обработки.

2. m ysqlaccess – используется, чтобы внести в список привилегии пользователя для конкретной базы данных. Это дает информацию, которая может быть полезна при диагностировании проблем с доступом пользователей к данной базе данных.

3. mysqladmin – выполняет административные функции. Данная команда может использоваться для создания баз данных,изменения пароля пользователя (администратор может изменить пароль любому пользователю, а рядовой пользователь – только свой собственный), перезагрузки и остановки сервера, просмотра списка процессов, запущенных на сервере.

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

5. mysqldump – программа используется для создания дампа содержания базы данных MySQL. Она пишет инструкции SQL в стандартный вывод. Эти инструкции SQL могут быть переназначены в файл. Можно резервировать базу данных MySQL, используя mysqldump, но при этом Вы должны убедиться, что в этот момент с базой данных не выполняется никаких других действий.

6. mysqlshow – программа может использоваться, чтобы показать, с какими базами данных MySQL работает, какие таблицы данная база данных содержит, и какие поля есть в таблице в данной базе данных.

Типы данных



Поделиться:


Последнее изменение этой страницы: 2017-02-08; просмотров: 508; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.187.103 (0.013 с.)