30511

Структурированный язык запросов SQL. История создания языка SQL. Подмножество SQL - Data Definition Language (DDL). Модификация схем базы данных . Стандартные типы данных. Вычисляемые столбцы. Подмножество SQL - Data Query Language (DQL)

Доклад

Математика и математический анализ

Модификация схем базы данных . Стандартные типы данных. Доска то что выделено курсивом устно Язык SQL имеет два основных компонента: язык DDL Dt Definition Lnguge предназначенный для определения структур базы данных; язык DML Dt Mnipultion Lnguge предназначенный для выборки и обновления данных. Для определения данных символьного типа используется следующий формат: CHRCTER [VRYING] [length] Битовые данные тип bit Битовый тип данных используется для определения битовых строк т.

Русский

2013-08-24

65.5 KB

15 чел.

Структурированный язык запросов SQL. История создания языка SQL. Подмножество SQL - Data Definition Language (DDL). Модификация схем базы данных . Стандартные типы данных. Вычисляемые столбцы.  Подмножество SQL - Data Query Language (DQL).

Доска

(то что выделено курсивом - устно)

Язык SQL имеет два основных компонента:

язык DDL (Data Definition Language), предназначенный для определения структур базы данных; 

язык DML (Data Manipulation Language), предназначенный для выборки и обновления данных. 

Символьные данные (тип character)

Символьные данные состоят из последовательностей символов, входящих в определенный создателями СУБД набор символов. Для определения данных символьного типа используется следующий формат:

CHARACTER [VARYING] [length]

Битовые данные (тип bit)

Битовый тип данных используется для определения битовых строк, т.е. последовательности двоичных цифр (битов), каждая из которых может иметь значение либо 0, либо 1. Для определения данных битового типа используется формат, сходный с определением символьных данных:

ВIT [VARYING] [length]

Точные числа (тип exact numeric)

Тип точных числовых данных используется для определения чисел, которые имеют точное представление в компьютере. Числа состоят из цифр, необязательной десятичной точки и необязательного символа знака. Данные точного числового типа определяются значностью (precision) и длиной дробной части (scale).

Округленные числа (тип approximate numeric)

Тип округленных чисел используется для описания действительных чисел. Округленные числа или числа с плавающей точкой представляются в научной нотации, при которой число записывается с помощью мантиссы и порядка, например: 10ЕЗ, +5.2Е6, -0.2Е-4.

Дата и время (тип datetime)

Тип данных "дата/время" используется для определения моментов времени с некоторой установленной точностью. Примерами являются даты, отметки времени и время суток.

Данные типа interval

Данные с типом интервала используются для представления периодов времени. Любой интервальный тип данных состоит из набора отдельных полей: YEAR, MONTH, DAY, HOUR, MINUTE и SECOND. Существует два класса данных с интервальным типом: интервалы год-месяц и интервалы день-время 

Скалярные операторы

Язык SQL включает некоторое количество встроенных скалярных операторов и функций, которые могут использоваться для построения скалярных выражений, т.е. выражений, вычисление которых дает скалярный результат. Помимо обычных арифметических операторов (+, -, * и /) в языке определены и другие операторы.(например САSЕ)

Оператор определения схемы имеет следующий формат (упрощенно):

CREATE SCHEMA [name | AUTHORIZATION creator-identifier]

Схема удаляется с помощью оператора DROP SCHEMA, который имеет следующий формат:

DROP SCHEMA паше [ RESTRICT I CASCADE ]

Если указано ключевое слово RESTRICT (именно оно принимается по умолчанию), схема должна быть пустой, иначе выполнение операции будет отменено. Если указа- но ключевое слово CASCADE, при выполнении оператора будут автоматически удалены все связанные с удаляемой схемой объекты, причем в порядке, указанном выше.

Для создания БД используется оператор SQL, имеющий формат:

CREATE {DATABASE | SCHEMA} "<имя_файла>"
[ USER "имя_пользователя" [PASSWORD "пароль"]]
[PAGE_SIZE [=] целое]
[LENTH [=] целое]
[DEFAULT CHARACTER SET набор символов]

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

CREATE TABLE ИмяТаблицы (
<определение_столбца1> [<ограничение1>]
[<определение_столбца2]| [<ограничение2>]
…)

<определение_столбца> = имя_столбца
{тип_данных | COMPUTED [BY] (<выражение>) | домен}
[DEFAULT { литерал  |NULL | USER}]  [NOT NULL] [<ограничение>]

Где:

COMPUTED [BY] (<выражение>)

служит для определения столбца вычисляемых значений

Общий формат оператора SELECT имеет следующий вид:

SELECT [DISTINCT | ALL] {* | [column_expression [AS new_name]] [,... ]}
FROM
table_name [alias] [,... ]
[WHERE
condition]
[GROUP BY
со1umп_list] [HAVING condition]
[ORDER BY
column_list]

Здесь параметр column_expression представляет собой имя столбца или выражение из нескольких имен. Параметр table_name является именем существующих в базе данных таблицы или представления, к которым необходимо получить доступ. Необязательный параметр alias — это сокращение, устанавливаемое для имени таблицы.

Фразы оператора SELECT определяют:

SELECT

столбцы, которые должны присутствовать в выходных данных

FROM

имена используемой таблицы или нескольких таблиц

WHERE

фильтрацию строк объекта в соответствии с заданными условиями

GROUP BY

группировку строк, имеющих одно и то же значение в указанном столбце

HAVING

фильтрацию группы строк объекта в соответствии с указанным условием

ORDER BY

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

Первая предназначена для вставки единственной строки в указанную таблицу. Эта форма оператора INSERT имеет следующий формат:

INSERT  INTO  table_name  [(column_list)]  VALUES  (data_value_list)

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

INSERT  INTO  table_name  [(column_list)]  SELECT …

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

UPDATE имя_таблицы
SET имя_столбца1 = значение1
[, имя_столбца2 = значение2 … ]
   [
WHERE предикат]

Здесь параметр имя_таблицы представляет либо имя таблицы базы данных, либо имя обновляемого представления. В предложении SET указываются имена одного или более столбцов, данные в которых необходимо изменить. Предложение WHERE является необязательным.

Выступление

Одним из языков, появившихся в результате разработки реляционной модели данных, является язык SQL (Structured Query Language), который в настоящее время получил очень широкое распространение и практически превратился в стандартный язык реляционных баз данных. Стандарт язык SQL был выпущен Американским национальным институтом стандартов в 1986 году, а в 1987 году Международная организация стандартов принял этот стандарт в качестве международного. В настоящее время язык SQL поддерживается многими десятками СУБД различных типов, разработанных для самых разнообразных вычислительных платформ.

В стандарте ANSI предусматривается разделение языка DDL на два компонента: собственно язык DDL, предназначенный для определения структуры базы данных, и язык DCL (Data Control Language), используемый для управления доступом к данным.

Язык DDL, будучи частью языка SQL, позволяет создавать и уничтожать различные объекты базы данных — например, схемы, домены, таблицы, представления или индексы.

Типы данных языка SQL, определенные стандартом ISO

В языке SQL существует шесть скалярных типов данных.

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

DQL - Data Query Language - язык запросов, составная часть SQL. Состоит из единственной команды SELECT.

Назначение оператора SELECT состоит в выборке и отображении данных одной или более таблиц базы данных. Это исключительно мощный оператор, способный выполнять действия, эквивалентные операторам реляционной алгебры selection, projection и join, причем в пределах единственной выполняемой команды.

Порядок фраз в операторе SELECT не может быть изменен. Только две фразы — SELECT и FROM — являются обязательными, все остальные могут быть опущены. Операция SELECT является закрытой: результат представляет собой другую таблицу.

Поскольку выборка всех имеющихся в таблице столбцов выполнятся достаточно часто, в языке SQL определен упрощенный вариант записи значения «все столбцы» — вместо имен столбцов указывается символ *.

Стандарт ISO позволяет явным образом задавать имена столбцов результирующей таблицы, для чего применяется фраза AS.

Выбор строк (предложение WHERE)

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

Инструкции GROUP BY и HAVING, агрегатные функции, инструкция ORDER BY.

В общем случае строки в результирующей таблице SQL-запроса не упорядочены. Однако их можно требуемым образом отсортировать, для чего в оператор SELECT помещается фраза ORDER BY. Фраза ORDER BY включает список разделенных запятыми идентификаторов столбцов, по которым требуется упорядочить результирующую таблицу запроса. Идентификатор столбца может представлять собой либо его имя, либо номер, который идентифицирует элемент списка. Номера столбцов могут использоваться в тех случаях, когда столбцы, по которым следует упорядочить результат, являются вычисляемыми, а фраза AS с указанием имени этого столбца в операторе SELECT отсутствует. Фраза ORDER BY позволяет упорядочить выбранные записи в порядке возрастания (ASC) или убывания (DESC) значений любого столбца или комбинации столбцов.

Фраза ORDER BY всегда должна быть последней в операторе SELECT.

Во фразе ORDER BY может быть указано и больше одного элемента. Первый элемент называется главным ключом сортировки и он определяет общую упорядоченность строк результирующей таблицы. Если в результирующей таблице значения главного ключа сортировки не уникальны, может оказаться желательным упорядочить строки с одним и тем же значением главного ключа по какому-либо дополнительному ключу сортировки. Если во фразе ORDER BY присутствуют второй и последующие элементы, то такие элементы называют младшими ключами сортировки.

Фраза Having предназначена для использования совместно с фразой GROUP BY для задания ограничений, указываемых с целью отбора тех групп, которые будут помещены в результирующую таблицу запроса. Хотя фраза Having и предложение WHERE имеют сходный синтаксис, их назначение различно. Предложение WHERE предназначено для фильтрации отдельных строк, используемых для группирования или помещаемых в результирующую таблицу запроса, тогда как фраза HAVING используется для фильтрации групп, помещаемых в результирующую таблицу запроса. Стандарт ISO требует, чтобы имена столбцов, используемые во фразе HAVING, обязательно присутствовали в списке фразы GROUP BY или применялись в обобщающих функциях. На практике условия поиска во фразе HAVING всегда включают, по меньшей мере, одну обобщающую функцию, в противном случае эти условия поиска должны быть помещены в предложение WHERE и применяться для отбора отдельных строк.

Фраза HAVING не является необходимой частью языка SQL — любой запрос, написанный с использованием фразы HAVING, может быть представлен в ином виде, без ее применения.

Операторы INSERT, UPDATE, DELETE.

На практике для определения структуры базы данных (т.е. ее таблиц) используются DDL-операторы, а для заполнения этих таблиц данными и выборки из них информации с помощью запросов — DML-операторы.

К ним относятся три оператора языка SQL, предназначенных для модификации содержимого базы данных:

INSERT — предназначен для добавления данных в таблицу;

UPDATE — предназначен для модификации уже помещенных в таблицу данных;

DELETE — позволяет удалять из таблицы строки данных.

Добавление новых данных в таблицу (оператор INSERT)

Существует две формы оператора INSERT.

Предложение SELECT может представлять собой любой допустимый оператор SELECT. Строки, вставляемые в указанную таблицу, соответствуют строкам результирующей таблицы, созданной при выполнении вложенного запроса.

Модификация данных в базе (оператор UPDATE)


 

А также другие работы, которые могут Вас заинтересовать

233. Исследование электромеханических реле 508 KB
  Исследование работы электромагнитного реле РТ-40. Исследование электронных реле тока и реле времени. Исследование измерительного блока электронного реле тока (напряжения). Исследование схемы генератора меандра на КР1006ВИ1.
234. Разработка цифрового вольтметра, на основе метода двойного интегрирования 139.64 KB
  Структурная схема цифрового вольтметра и расчет основных его параметров. Схемотехника основных узлов цифрового вольтметра. Последовательный ввод информации с входа D и её сдвиг. Использование четырехразрядного реверсивного счетчика.
235. Розрахунок головної балки мостового вантажопідйомного крану 398.33 KB
  Розрахунок конструкцій за допустимими напруженнями. Визначення висоти основного перерізу балки з умов міцності (мінімальної маси). Визначення еквівалентних напружень у небезпечному перерізі балки. Стійкість нижньої частини вертикального полотна.
236. Информационное обеспечение департамента управления министерства финансов Республики Хакасия 562.5 KB
  Структура организации (функциональные и информационные связи). План и схема развёртывания комплекса программ. Составление заявки на ремонт неисправного, а также приобретение нового и модернизацию устаревшего аппаратного оборудования серверов и рабочих станции, а также сетевого оборудования.
237. Теоретический расчет работы электродвигателя 193.34 KB
  Определение мощности и частоты вращения двигателя, общий коэффициент полезного действия. Фактическая частота вращения на валу рабочей машины, расчет зубчатых колёс редуктора. Конструктивные размеры шестерни и колеса.
238. Система электронно-цифровой подписи 648.47 KB
  Изучения руководства пользователя программы, регистрация открытых ключей и проверка подписей. Вывод названия организации и составление отчетов по запросу банк - клиент. Проверка правильности работы программы и наличия цифровой подписи.
239. Расчет показателей судна и его энергетический установки 368.5 KB
  Обоснование эксплуатационных режимов работы главных двигателей СЭУ. Выбор схемы обеспечения судна электроэнергией и теплом. Выбор режима работы главных двигателей судна. Обоснование и выбор схемы энергетического теплоснабжения.
240. Принципы расчета оплаты труда персонала предприятия 479.5 KB
  Основные принципы организации оплаты труда, состав фонда оплаты труда. Теоретические основы системы организации и оплаты труда. Направления по усовершенствованию системы оплаты труда. Совершенствования системы оплаты труда для повышения ее стимулирующий функции.
241. Разработка и реализация алгоритмов обработки данных, получаемых с помощью сканирующих нанотвердомеров семейства НаноСкан 409.92 KB
  Пользовательский интерфейс программы NanoScan Viewer. Реализация метода индентирования в НаноСкан-3Д. Апробация разработанного алгоритма на примере серии измерений твердости образца твердого сплава на основе кубического нитрида бора.