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)


 

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

58114. Общество и общественные отношения 226 KB
  ОБЩЕСТВО - обособившееся от природы, но тесно с ней связанная часть мира, которая включает в себя способы взаимодействия людей и формы их объединений.
58115. Значение здоровья для человека 41 KB
  Цель: ознакомить с задачами и содержанием курса Основы здоровья; формировать представление о значении здоровья для обучения труда общения с родными; развивать память мотивацию основ сохранения и укрепления здоровья; воспитывать любовь к жизни к людям.
58116. Військові звання і знаки розрізнення. Начальники та підлеглі, старші та молодші, їх права і обовязки 182.5 KB
  Мета: Вивчити поняття щодо суті і значення військової дисципліни; Назвати статути Збройних сил України основні їх вимоги. Статути Збройних Сил України це зведення законів військової служби на основі яких проходять повсякденне життя виховання навчання бойова діяльність військ...
58118. Функции финансов, как экономической категории 15.22 KB
  Именно через эту функцию реализуется общественное назначение финансов – обеспечение каждого субъекта хозяйствования и государства необходимыми ресурсами, использ. в форме денежных фондов целевого назначения.
58119. Финансы как экономическая категория в системе социально-экономических категорий 15.17 KB
  Каждая наука оперирует определенным кругом понятий, имеет особые, специфические категории, которые являются концентрированным выражением общих, наиболее существенных признаков, качеств, закономерностей и взаимосвязей объектов той сферы
58120. Создание Интернет-страниц 32 KB
  Он требует терпения и знания основ «программирования» на языке html, который, по сути, языком программирования не является. Итак. Для работы нам будет достаточно программы Блокнот. И даже более того, достаточно будет использовать только меню FILE.
58121. СУСПІЛЬНО-ІСТОРИЧНІ УМОВИ РОЗВИТКУ УКРАЇНСЬКОЇ ЛІТЕРАТУРИ ХХ ст., ОСНОВНІ СТИЛЬОВІ НАПРЯМИ 120.5 KB
  Цi хронологiчнi межi визначаються не тiльки перебiгом революцiї 1905–1917 рр., а й вiдходом iз життя I. Франка (1916 р.) та М. Коцюбинського й Лесi Українки (обоє померли в 1913 р.). Формування пiсля 1905 р. Києва як лiтературної столицi України, поширення загальноукраїнської лiтературної перiодики
58122. ВВЕДЕНИЕ. МИР В XVI – XVIII ВВ 46 KB
  В более узком смысле история — это наука, изучающая всевозможные источники о прошлом для того, чтобы установить последовательность событий, исторический процесс, объективность описанных фактов и сделать выводы о причинах событий.