my sql 0

14

Upload: vladimir-burdaev

Post on 24-May-2015

728 views

Category:

Education


0 download

DESCRIPTION

MySQL

TRANSCRIPT

Page 1: My sql 0
Page 2: My sql 0

На сегодняшний день СУБД MySQL является одной из

самых известных, надежных и быстрых из всего

семейства существующих СУБД. Одной из причин являются правила ее распространения —

распространяется бесплатно под лицензией *GNU GPL и

вместе со своими исходными текстами, другая причина –

это то, что MySQL относительно быстрая

СУБД.

Page 3: My sql 0

Принцип работы СУБД MySQL аналогичен

принципу работы любой СУБД, использующей SQL (Structured Query

Language, язык структурированных запросов) в качестве

командного языка для создания/удаления баз

данных, таблиц, для пополнения таблиц

данными, для осуществления выборки

данных.

Page 4: My sql 0

База данных, которую сервер MуSQL

использует для хранения внутренней

информации о пользователях, по умолчанию имеет имя mуsql. В этой

базе данных определены таблицы

для хранения информации

пользовательских учетных записей.

Содержание БД mysql в таблице 1.1.

Page 5: My sql 0

Ниже приведено описание важных характеристик программного обеспечения MySQL.

Внутренние характеристики и переносимость Написан на C и C++. Протестирован на множестве различных

компиляторов. Работает на различных платформах. Для обеспечения переносимости используется GNU Automake,

Autoconf и Libtool. API для C, C++, Eiffel, Java, Perl, PHP, Python, Ruby и Tcl Полностью многопоточный с использованием потоков ядра. Это

означает, что, если такая возможность обеспечивается, можно легко организовать работу с несколькими процессорами.

Очень быстрые дисковые таблицы на основе В-деревьев со сжатием индексов.

Очень быстрая базирующаяся на потоках система распределения памяти.

Очень быстрые соединения, использующие оптимизированный метод однопроходного мультисоединения (one-sweep multi-join).

Хеш-таблицы в памяти, используемые как временные таблицы. SQL-функции реализованы при помощи хорошо

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

Page 6: My sql 0

Типы столбцов Большое количество: целочисленные со знаком/беззнаковые, длиной в 1, 2, 3, 4 и

8 байтов, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET и ENUM.

С записями фиксированной и переменной длины. Все столбцы имеют значения по умолчанию. С помощью INSERT можно вставить

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

Команды и функции Полная поддержка операторов и функций в SELECT- и WHERE- частях запросов.

Полная поддержка для операторов SQL GROUP BY и ORDER BY с выражениями SQL. Поддержка групповых функций (COUNT(), COUNT(DISTINCT ...), AVG(), STD(), SUM(), MAX() и MIN()).

Поддержка LEFT OUTER JOIN и RIGHT OUTER JOIN с синтаксисом ANSI SQL и ODBC.

Разрешены псевдонимы для таблиц и столбцов в соответствии со стандартом SQL92.

DELETE, INSERT, REPLACE, and UPDATE возвращают число строк, которые были изменены. Вместо этого можно задать возвращение совпавших строк. Для этого следует установить флаг при соединении с сервером.

Команду SHOW, которая является специфической для MySQL, можно использовать для получения информации о базах данных, таблицах и индексах. Чтобы выяснить, как оптимизатор выполняет запрос, можно применять команду EXPLAIN.

Имена функций не конфликтуют с именами таблиц и столбцов. Например, ABS является корректным именем столбца. Для вызова функции существует только одно ограничение: между именем функции и следующей за ним открывающей скобкой `(' не должно быть пробелов.

В одном и том же запросе могут указываться таблицы из различных баз данных (с версии 3.22).

Page 7: My sql 0

Свойства MySQL сервера: Многопоточность. Поддержка нескольких одновременных

запросов. Оптимизация связей с присоединением многих данных за один

проход. Записи фиксированной и переменной длины. Гибкая система привилегий и паролей. До 16 ключей в таблице. Каждый ключ может иметь до 15 полей. Поддержка ключевых полей и специальных полей в операторе

CREATE. Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed),

строк переменной длины и меток времени. Интерфейс с языками C и perl. Основанная на потоках, быстрая система памяти. Утилита проверки и ремонта таблицы (isamchk). Все операции работы со строками не обращают внимания на

регистр символов в обрабатываемых строках. Псевдонимы применимы как к таблицам, так и к отдельным

колонкам в таблице. Все поля имеют значение по умолчанию. INSERT можно

использовать на любом подмножестве полей. Легкость управления таблицей, включая добавление и удаление

ключей и полей.

Page 8: My sql 0

SELECT (выбрать) данные из указанных столбцов и

(если необходимо) выполнить перед выводом их преобразование в соответствии с указанными выражениями и (или) функциями. Для исключения дубликатов и одновременного упорядочения перечня необходимо дополнить запрос ключевым словом DISTINCT .

FROM (из) перечисленных таблиц, в которых

расположены эти столбцы WHERE

(где) строки из указанных таблиц должны удовлетворять указанному перечню условий отбора строк . Кроме традиционных операторов сравнения (= | <> | < | <= | > | >=) в WHERE фразе используются условия BETWEEN (между), LIKE (похоже на), IN (принадлежит), IS NULL (не определено) и EXISTS (существует), которые могут предваряться оператором NOT (не). Критерий отбора строк формируется из одного или нескольких условий, соединенных логическими операторами:

AND - когда должны удовлетворяться оба

разделяемых с помощью AND условия;

OR - когда должно удовлетворяться одно из

разделяемых с помощью OR условий; AND NOT

- когда должно удовлетворяться первое условие и не должно второе;

OR NOT - когда или должно удовлетворяться

первое условие или не должно удовлетворяться второе,

причем существует приоритет AND над OR (сначала выполняются все операции AND и только после этого операции OR). Для получения желаемого результата WHERE условия должны быть введены в правильном порядке, который можно организовать введением скобок.

Page 9: My sql 0

GROUP BY (группируя по) указанному перечню

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

агрегированное значение, используя во фразе SELECT SQL-функции SUM (сумма), COUNT (количество), MIN

(минимальное значение), MAX (максимальное значение) или AVG

(среднее значение) HAVING

(имея) в результате лишь те группы, которые удовлетворяют указанному

перечню условий отбора групп  ORDER BY

позволяет упорядочить результаты выбора данных. При этом

упорядочение можно производить в порядке возрастания - ASC

(ASCending) или убывания DESC (DESCending), а по умолчанию

принимается ASC. 

Запросы удаления служат для удаления строк из таблицы

DELETE FROM базовая_таблица WHERE фраза

За процесс добавления записей в таблицу в mySQL отвечает команда

INSERT. Она имеет два варианта использования.

INSERT INTO базовая_таблица VALUES (значение1, значение2 …)

Page 10: My sql 0

Запросы из таблиц: Klient, Tovar, Osnovnaya

1.Вывести все товары, заканчивающиеся на in

Page 11: My sql 0

2. Вывести фирмы, которые купили топливо больше чем на 5000

Page 12: My sql 0

3. Вывести всех, кто покупал бензин на сумму больше 1000 во второй половине мая

Page 13: My sql 0

4. Вывести суммарные прибыли каждого вида топлива

Page 14: My sql 0

MуSQL имеет развитую систему доступа к базам данных. Пользователю базы данных может быть предоставлен доступ ко всей

базе данных, отдельным таблицам и отдельным столбцам таблиц. Имеется

разграничение на действия, которые может производить пользователь с

записями. Для организации такой сложной (на первый взгляд) структуры доступа

используется несколько таблиц в специальной базе данных. На основании значений этих таблиц выстраивается

политика предоставления доступа.