Основы программирования в Linux
Шрифт:
Теперь наверняка у пользователя foo есть пароль. Не забудьте вернуться в свою исходную базу данных.
Начиная с версии MySQL 4.1, схема формирования паролей обновлена по сравнению с более ранними версиями. Но для обратной совместимости вы все еще можете задавать пароль, применяя старый алгоритм с функцией
Создание базы данных
Следующий ваш шаг — создание базы данных. Предположим, что вам нужна база данных с именем
Теперь
Далее сообщите MySQL о том, что вы хотите переключиться на вашу новую базу данных:
Сейчас вы можете ввести в вашу базу данных таблицы и нужные вам данные. Во время последующих регистрации вы сможете задавать базу данных в конце командной строки и избежать применения команды
Введя после подсказки пароль, вы автоматически, в ходе процесса подключения, переключитесь на использование базы данных rick по умолчанию.
Типы данных
Итак, у вас есть действующий сервер MySQL, безопасная регистрация вашего пользователя и база данных, готовая к применению. Что дальше? Сейчас нужно создать несколько таблиц со столбцами для хранения данных. Но прежде чем вы сможете сделать это, следует узнать о типах данных, поддерживаемых MySQL.
Типы данных MySQL довольно обычны, поэтому мы лишь бегло пробежимся по основным типам, и как всегда более подробную информацию можно найти в руководстве по MySQL на Web-сайте MySQL.
Столбец логического типа можно определить с помощью ключевого слова
В табл. 8.7 перечислены все доступные символьные типы. Первые три — стандартные, оставшиеся три специфичны для MySQL. Мы полагаем, что на практике вы будете придерживаться стандартных типов.
Таблица 8.7
| Определение | Описание |
|---|---|
| CHAR | Одиночный символ |
| CHAR(N) | Символьная строка длиной точно N символов, которая будет при необходимости заполняться пробелами. Максимальная длина 255 символов |
| VARCHAR(N) | Массив переменной длины из N символов. Максимальная длина 255 символов |
| TINYTEXT | Аналогичен VARCHAR(N) |
| MEDIUMTEXT | Текстовая строка длиной до 65 535 символов |
| LONGTEXT | Текстовая строка длиной до 2^3^2–1 символов |
В табл. 8.8 показано, что числовые типы делятся на целочисленные и типы с плавающей точкой.
Таблица 8.8
| Определение | Тип | Описание |
|---|---|---|
| TINYINT | Целочисленный | 8-битный тип данных |
| SMALLINT | Целочисленный | 16-битный
|
| MEDIUMINT | 24-битный тип данных | |
| INT | Целочисленный | 32-битный тип данных. Это стандартный тип и хороший выбор для данных общего назначения |
| BIGINT | Целочисленный | 64-битный знаковый тип данных |
| FLOAT(P) | С плавающей точкой | Числа с плавающей точкой с точностью как минимум P знаков |
| DOUBLE(D, N) | С плавающей точкой | Числа с плавающей точкой и двойной точностью из D цифр и N десятичных знаков |
| NUMERIC(P, S) | С плавающей точкой | Действительные числа длиной P разрядов всего с S десятичными разрядами из них. В отличие от DOUBLE это точно заданное число (exact number), поэтому оно больше подходит для хранения денежных сумм, но обрабатывается менее эффективно |
| DECIMAL(Р, S) | С плавающей точкой | Синоним NUMERIC |
Мы полагаем, что в основном вы будете пользоваться типами
В табл. 8.9 перечислены пять имеющихся временных типов.
Таблица 8.9
| Определение | Описание |
|---|---|
| DATE | Хранит даты с 1 января 1000 г. по 31 декабря 9999 г. |
| TIME | Хранит время с -838:59:59 до 838:59:59 |
| TIMESTAMP | Хранит метку времени, начиная с 1 января 1970 г. и по 2037 г. |
| DATETIME | Хранит даты с 1 января 1000 г. по последнюю секунду 31 декабря 9999 г. |
| YEAR | Хранит номер года. Будьте осторожны с двузначными величинами, поскольку они неоднозначны и автоматически преобразуются в четырехзначные числа. |
Учтите, что следует быть внимательными при сравнении значений типов
Создание таблицы
Имея действующий сервер базы данных, зная как предоставлять права доступа пользователям и как создавать базу данных, а также ознакомившись с основными типами данных, можно переходить к созданию таблиц.
Таблица базы данных — это просто последовательность строк, каждая из которых содержит фиксированный набор столбцов. Она довольно похожа на электронную таблицу за исключением того, что у всех строк должно быть одно и то же число столбцов и одинаковые типы данных и каждая строка каким-то образом должна отличаться от всех остальных строк таблицы.
База данных может, если для этого есть разумные основания, содержать очень много, практически неограниченное количество таблиц. Однако лишь немногим СУРБД требуется более 100 таблиц, а большинству маленьких систем вполне достаточно 25 или около того таблиц.