MySql


MySql - свободная система управления базами данных (СУБД). MySQL является собственностью компании Sun Microsystems, осуществляющей разработку и поддержку приложения.
Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.
Непосредственный (прямой) режим работы с MySQL производится через командную строку ОС.
Клиентская программа MySQL представляет собой утилиту командной строки. Эта программа подключается к серверу по сети. Команды, выполняемые сервером, обычно связаны с чтением и записью данных на жестком диске.
Клиентские программы могут работать не только в режиме командной строки. Есть и графические клиенты, например MySQL GUI, PhpMyAdmin и др.
MySQL взаимодействует с базой данных на языке, называемом SQL (Structured Query Language — язык структурированных запросов).
SQL предназначен для манипуляции данными, которые хранятся в Системах управления реляционными базами данных (RDBMS). SQL имеет команды, с помощью которых данные можно извлекать, сортировать, обновлять, удалять и добавлять. Стандарты языка SQL определяет ANSI (American National Standards Institute). В настоящее время действует стандарт, принятый в 2003 году (SQL-3).
SQL можно использовать с такими RDBMS как MySQL, mSQL, PostgreSQL, Oracle, Microsoft SQL Server, Access, Sybase, Ingres. Эти системы RDBMS поддерживают все важные и общепринятые операторы SQL, однако каждая из них имеет множество своих собственных патентованных операторов и расширений.
Основные правила синтаксиса SQL:

в общем случае SQL не чувствителен к регистру букв;
каждая команда в SQL заканчивается точкой с запятой (;)
в отличии от РНР SQL требователен к типам данных записываемых в поля.

Типы переменных


Строковые типы
Тип данных в столбце Назначение Необходимый объем памяти
CHAR (M) Строки фиксированной длины M байтов,  0<M<255
VARCHAR (M) Строки произвольной длины L + 1 байтов, где L<M и  0<M<65 535
BINARY (M) Хранение двоичных данных M байтов,  0<M<255
ENUM (‘value1’, ‘value2’, …) Могут принимать одно из нескольких заранее заданных значений 1 или 2 байт в зависимости от числа значений  (65 535 значений максимум)
SET (‘value1’, ‘value2’, …) В поле одновременно может содержаться несколько из заранее заданного списка значений 1, 2, 3, 4 или 8 байтов в зависимости от числа значений (64 значения максимум)
...    


MySQL удаляет пробелы в конце текстовых строк у CHAR во время извлечения и у VARCHAR во время сохранения.

Формат записи даты и времени
Тип данных в столбце Описание
DATETIME YYYY-MM-DDHH : MM : SS
DATE YYYY-MM-DD
TIMESTAMP YYYYMMDDHHMMSS
TIME HH : MM : SS
YEAR YY или YYYY

Использование чисел в таблицах MySQL Целые числа могут храниться со знаком (Signed) или без знака (Unsigned)

Хранение числовых значений
Тип Память Минимальное значение Максимальное значение
  в байтах Signed Unsigned Signed Unsigned
TINYINT 1 -128 0 127 255
SMALLINT 2 -32 768 0 32 767 65 535
MEDIUMINT 3 -8 388 608 0 8 388 607 16777215
INT 4 -2147483648 0 2147483647 4294967295
BIGINT 8 -263 0 263 -1 264 -1


Числа с плавающей точкой
Тип данных в столбце Описание Используемая память в байтах
FLOAT(p) Данные округляются при записи до указанной в определении столбца точности

4,  (если 0   < р <  24);
8,  (если 25 < р <  53)

FLOAT Данные округляются при записи до указанной в определении столбца точности 4
DOUBLE [ размерность ] Данные округляются при записи до указанной в определении столбца точности 8
DECIMAL (M,D) Данные, которые не должны округлятся (хранятся в двоичном виде) Переменная

Консоль MySQL позволяет вводить как инструкции SQL, так и служебные команды MySQL, предназначеные для администрирования и использования таблиц в базах данных MySQL. К основным командам относятся SHOW, USE и CREATE. Рассмотрим каждую из них отдельно.
SHOW Эта команда предназначена для просмотра доступных баз данных и таблиц в конкретных базах данных. Для просмотра списка баз данных необходимо ввести такую команду:

SHOW DATABASES;
Если, например, существуют две базы данных - mysql и test (эти две базы как правило создаются автоматически при инсталляции сервера), то MySQL ответит примерно так:
| Database |
| mysql |
| test |
+----------+

Для просмотра списка таблиц используется эта же команда в таком виде:

SHOW TABLES;
Эта команда выдаст список таблиц в текущей базе данных:
| Tables in mysql |
| test |
| mysql |
+-----------------+

Замечание: вы можете работать только с одной базой данных в одно и то же время, поэтому в приведенном выше примере нет нужды указывать название базы данных, список таблиц которой стоит вывести, поскольку производится поиск в активной на данный момент базе.

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

CREATE DATABASE staff
После этой операции будет создана новая база данных не содержащая никаких таблиц, а команда SHOW DATABASES выдаст следующее:

| Database |
| mysql |
| test |
| staff |
+----------+

USE
Как уже было сказано выше, в один и тот же момент только одна база данных может быть активна. Команда USE служит для выбора этой активной базы. Для перехода к некоторой базе данных необходимо выполнить следующую операцию:

USE staff
Стоит отметить, что при создании новой базы данных (см. выше), новая база не становится активной автоматически - для ее использования необходимо сделать это самостоятельно.

SQL
Нижеследующее ознакомит вас с методами извлечения и занесения данных в таблицы при помощи языка SQL. Просмотр данных

SELECT * FROM mysql;
Эта команда подразумевает, что в активной базе данных существует таблица mysql, из которой она просто извлекает все данные и выводит их на экран.
Команда SELECT служит для просмотра данных таблиц. Ее упрощенный синтаксис таков:
SELECT <список полей> FROM <список названий таблиц> [WHERE <список условий>] [ORDER BY <список полей>];
В списке поля может быть как один элемент, так и несколько; кроме того возможно указание символа "*" (), который говорит, что следует показать все поля таблицы. Часть WHERE ... является необязательной и позволяет выбрать из таблицы строки, удовлетворяющие определенному(ым) условию(ям). Раздел ORDER BY ... служит для сортировки полученных данных по определенным полям.

Безопасность

Система безопасности MySql основана на привилегиях и паролях с возможностью верификации с удаленного компьютера, за счет чего обеспечивается гибкость и безопасность. Пароли при передаче по сети при соединении с сервером шифруются. Клиенты могут соединяться с MySQL, используя сокеты TCP/IP, сокеты Unix или именованные каналы (named pipes, под NT)

Преимущества:

• Вместимость данных. Начиная с MySQL версии 3.23, где используется новый тип таблиц, максимальный размер таблицы доведен до 8 миллионов терабайт (263 bytes).
• Программное обеспечение MySQL - это ПО с открытым кодом. Это означает, что применять и модифицировать его может любой желающий. Такое ПО можно получать по Internet и использовать бесплатно. При этом каждый пользователь может изучить исходный код и изменить его в соответствии со своими потребностями.
• Технические возможности СУБД MySQL. ПО MySQL является системой клиент-сервер, которая содержит многопоточный SQL-сервер, обеспечивающий поддержку различных вычислительных машин баз данных, а также несколько различных клиентских программ и библиотек, средства администрирования и широкий спектр программных интерфейсов (API).

Недостатки:

• Наиболее быстрый тип таблиц MyISAM имеет не высокую надёжность при достижении таблиц размера более 10Gb
• Отсутствие визуальных средств разработки и администрирования

Hosted by uCoz