Книги наших сотрудников
 
Гостевая книга 

справочник функций

скачать учебник PHP

Форум PHP

Учебник по PHP 4

Сколько новых сайтов Вы делаете за год? результаты

1 сайт

2-3 сайта

не больше 10 сайтов

10-20 сайтов

Так много, что не могу сосчитать

Я вообще не делаю сайты

Оглавление

  1. Основы PHP
  2. Операторы языка PHP
  3. Строковые функции
  4. Массивы
  5. Функции
  6. Работа с файлами
  7. Регулярные выражения
  8. Сессии и cookies в PHP
  9. Работа с FTP
  10. Проверка данных
  11. Гостевая книга
  12. PHP и MySQL
Rambler's Top100
Яндекс цитирования
Rambler's Top100



Взаимодействие PHP и MySQL

Предыдущая Следующая

Работа с сервером MySQL



В этом разделе мы поговорим о том, как работать с клиентской программой mysql, с помощью которой можно подсоединяться к MySQL-серверу, выполнять SQL-запросы и просматривать результаты этих запросов. Текст этого раздела рассчитан на то, что на вашем компьютере уже установлена утилита mysql и существует связь с сервером MySQL.

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

  shell> mysql -h host -u user -p

После этого на экране появится запрос Enter password:, и вам нужно будет ввести свой пароль. Если соединение прошло нормально, то на экране появляется следующая информация и метка командной строки mysql>:

  Welcome to the MySQL monitor. Commands end with ; or \g.
  Your MySQL connection id is 459 to server version: 
  Type 'help' for help.
  mysql>

Появление метки mysql> означает, что программа mysql готова к работе.

Отсоединиться от сервера можно в любой момент, набрав команду QUIT:

  mysql> QUIT
  Bye

Кроме этого, разорвать соединение с сервером можно также, одновременно нажав клавиши +.

Замечание

Как правило, на только, что установленном MySQL на локальной машине доступ осуществляется без ввода пароля и хоста, вводом команды mysql в командной строке.

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

Ниже приведена простая команда, запрашивающая у сервера информацию об его версии и текущей дате:

  mysql> SELECT VERSION(), CURRENT_DATE;

Ответом MySQL на этот запрос будет следующая таблица:

  +--------------+--------------------+
  | version() | current_date |
  +--------------+--------------------+
  1 row in set (0.02 sec)

На примере выполнения этого запроса можно увидеть следующие основные особенности работы с MySQL:

  • Команда, посылаемая серверу, обычно состоит из SQL-выражения, за которым следует точка с запятой. Из этого правила есть несколько исключений, когда после команды точка с запятой не ставится, к примеру, уже упомянутая команда QUIT;
  • MySQL выводит результаты запроса в виде таблицы;
  • После вывода таблицы с результатами запроса, mysql сообщает количество возвращаемых строк и время выполнения запроса. Это удобно, поскольку позволяет оценить как производительность сервера, так и эффективность выполняемого запроса;
  • После вывода результатов запроса и времени его выполнения, mysql выводит новую строку mysql>, что означает готовность к выполнению новых команд.

Заметим, что команды MySQL не чувствительны к регистру, поэтому приведенные ниже запросы абсолютно идентичны:

  mysql> select version(), current_date;
  mysql> SELECT VERSION(), CURRENT_DATE;
  mysql> Select Version(), Сurrent_DATE;

MySQL позволяет на одной строчке разместить несколько команд, но каждая из них должна заканчиваться точкой с запятой. К примеру:

  mysql> SELECT VERSION(); SELECT NOW();

На такой запрос мы получим следующий результат:

  +---------------+
  |  version() |
  +---------------+
  | 4.0.13-nt |
  +---------------+
  1 row in set (0.00 sec)
  +----------------------------------+
  | NOW()                        |
  +----------------------------------+
  | 2004-01-25 16:57:00 |
  +----------------------------------+
  1 row in set (0.03 sec)

Однако помещать все команды на одной строке совершенно необязательно:

  mysql> SELECT USER(),
      -> CURRENT_DATE;

И вот результат:

  +----------------------------+---------------------+
  | user()                    | current_date |
  +----------------------------+---------------------+
  | ODBC@localhost | 2004-01-25   |
  +----------------------------+---------------------+ 
  1 row in set (0.00 sec)

Заметьте, что после того, как мы перешли на новую строку, метка командной строки изменилась с mysql> на ->. Таким образом mysql показывает, что завершенного запроса не получено и она ожидает конца запроса. Эта метка весьма полезна, так как позволяет избежать некоторых ошибок. К примеру, если вы забудете поставить точку с запятой в конце запроса, mysql сообщит вам об этом, выведя метку ->:

  mysql> select user()
      -> 

В завершение этого раздела, продемонстрируем, как можно использовать MySQL в качестве простого калькулятора, введя, к примеру, такой запрос:

  mysql> select cos(pi()/10), (2*5)-5;


Предыдущая Следующая

Если Вам нужна частная профессиональная консультация от авторов многих книг Кузнецова М.В. и Симдянова И.В., добро пожаловать в наш Консультационный Центр SoftTime.