Команда — создание базы данных доступна только администратору сервера, и на большинстве хостингов ее нельзя выполнять:
CREATE DATABASE ИмяБазыДанных
Создает новую базу данных с именем имяБазыданных.
Пример работы с этой функцией:
//Создаем базу данных $dbname – это может делать только суперпользователь
//Если база данных уже существует, будет некритическая ошибка
@mysql_query('CREATE DATABASE $dbname');
Рекомендуется везде использовать апострофы ('SQL – команда') в качестве ограничителей строк, содержащих SQL – команды. Этим можно гарантировать, что никакая $ - переменная случайно не будет интерполирована (т.е. не заменится на свое значение), и увеличится безопасность скриптов.
Команда создания базы данных CREATE DATABASE доступна только суперпользователю, и на большинстве хостингов простому пользователю ее выполнить невозможно. Она доступна только администратору сервера.
Для экспериментов создадим базу данных testbase, выполнив SQL-запрос из командной строки. Для этого нужно войти в систему MySQL и ввести в командной строке MySQL:
mysql> create database testbase;
После этого следует набрать:
mysql>use testbase;
База данных создана:
1.4 Выбор базы данных. Функция mysql_select_db
До того как послать первый запрос серверу MySQL, необходимо указать, с какой базой данных мы собираемся работать. Для этого предназначена функция mysql_select_db:
bool mysql_select_db(string $database_name [,resource $link_identifier])
Она уведомляет PHP, что в дальнейших операциях с соединением $link_identifier будет использоваться база данных $database_name.
Использование этой функции эквивалентно вызову команды use в SQL-запросе, т. е. функция mysql_select_db выбирает базу данных для дальнейшей работы, и все последующие SQL-запросы применяются к выбранной базе данных. Функция принимает в качестве аргументов название выбираемой базы данных database_name и дескриптор соединения resource. Функция возвращает true при успешном выполнении операции и false — в противном случае:
<?
//Код соединения с базой данных
if (! @mysql_select_db($dbname, $dbcnx))
{
//Выводим предупреждение
echo("<P> B настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно. </Р>");
exit(); }
?>
Обработка ошибок
Если в процессе работы с MySQL возникают ошибки (например, в запросе не сбалансированы скобки или же не хватает параметров), то сообщение об ошибке и ее номер можно получить с помощью описанных далее двух функций.
Важно аккуратно и своевременно использовать эти функции, потому что иначе отладка сценариев может усложниться.
● Функция:
int mysql_errno ([int $link_identifier])
возвращает номер последней зарегистрированной ошибки. Идентификатор соединения $link_identifier можно не указывать, если за время работы сценария было установлено только одно соединение.
● Функция:
string mysql_error([int $link_identifier])
возвращает не номер, а строку, содержащую текст сообщения об ошибке. Ее удобно применять в отладочных целях. Обычно mysql_error используют вместе с конструкцией or die (), например:
@mysql_connect("localhost", "user", "password")
or die("Ошибка при подключении к базе данных: ".mysql_error());
Оператор @, как обычно, служит для подавления стандартного предупреждения, которое может возникнуть в случае ошибки.
В последних версиях РНР предупреждения в MySQL-функциях по умолчанию не регистрируются.
Дата: 2019-07-30, просмотров: 199.