Исходя из предыдущих глав этой книги, язык SQL можно разбить на три отдельные языковые группы: ЯОД - язык определения данных (Data Definition Language, DCL), ЯМД - язык манипулирования данными (Data Manipulation Language, DML) и ЯУД - язык управления данными (Data Control Language, DCL). Эта глава практически целиком посвящена компоненту ЯОД, т.к. в ней обсуждаются команды MySQL, предназначенные для управления базами данных и таблицами. Также обсуждаются сравнительные характеристики различных типов таблиц, поддерживаемых MySQL. Речь пойдет как об уже известных типах таблиц MySQL, так и о сравнительно новых типах таблиц InnoDB, которые поддерживают транзакции. Эта глава также содержит справочный материал, который позволит разработчику сделать правильный выбор.
Создание баз данных
Вы наверняка уже обратили внимание, что "начальной точкой отсчета" в MySQL является база данных, которая служит своеобразным контейнером для таблиц и записей. Единственным способом создать базу данных является команда CREATE DATABASE. Предположим, что вы уже подключились к MySQL с помощью клиента, работающего с командной строкой mysql. Итак, создадим базу данных dbl.
Листинг 8.1.
Mysql> CREATE DATABASE dbl;
Query OK, 1 row affected (0.05 sec)
В MySQL базы данных представлены в файловой системе в виде подкаталогов в каталоге хранения данных MySQL. Поэтому имя базы данных в первой команде должно удовлетворять всем ограничениям, накладываемым операционной системой. Например, в ОС Windows запрещено использование в именах файлов и каталогов следующих символов: "", "/", ":", "*", "?", """, "<", ">", "|".
Длина имени базы данных не может превышать 64 символов, а имена, содержащие специальные символы или состоящие полностью из цифр, должны быть заключены в обратные одинарные кавычки Рассмотрим следующие примеры, в которых это будет наглядно проиллюстрировано.
Что в имени твоем?
Вообще, хорошим тоном считается начинать имена баз данных с буквы, и при этом имя базы данных состоит только из алфавитно-цифровых символов и символов подчеркивания. Помните, что даже если MySQL и будет работать с более "вычурным" именем, то другое приложение может такое имя "не пропустить".
Выбор используемой базы данных
Оператор USE позволяет выбрать базу данных, делая ее текущей для всех операций. Рассмотрим следующий пример, демонстрирующий выбор базы данных dbl в качестве текущей для всех будущих запросов.
Конечно, тот факт, что база данных была выбрана с помощью команды USE, совсем не значит, что другие базы данных при этом становятся недоступными. Вполне возможно работать с таблицами из других баз данных, предваряя их имена именем базы данных, т.е. MySQL будет "знать", где их можно взять, что подтверждается следующим примером.
Удаление баз данных
Базу данных можно удалить, удаляя при этом и все ее таблицы. Для этого предназначена команда DROP DATABASE. Рассмотрим следующий пример, в котором удаляется база данных dbl .
Заметим, что эту команду следует использовать с особой осторожностью, т.к. при удалении базы данных удаляются все ее таблицы (и данные, которые они содержат), а также весь каталог данных удаляемой базы данных.
Здесь также можно воспользоваться предложением IF EXISTS для того, чтобы избежать назойливых сообщений об ошибках MySQL, которые появляются в том случае, когда база данных, которую вы стремитесь удалить, не существует.
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
Все о MySQL. Обработка баз данных и таблиц
28-12-2009
<< Предыдущая статья | Следующая статья >> |
Все о MySQL. Системные информационные функции | Все о MySQL. Создание таблиц |