Базы данных, SQL.

Язык SQL (Structured Query Language - структурированный язык запросов) представляет собой стандартный высокоуровневый язык описания данных и манипулирования ими в системах управления базами данных (СУБД), построенных на основе реляционной модели данных.

Язык SQL был разработан фирмой IBM в конце 70-х годов. Первый международный стандарт языка был принят международной стандартизирующей организацией ISO в 1989 г., а новый (более полный) - в 1992 г. В настоящее время все производители реляционных СУБД поддерживают с различной степенью соответствия стандарт SQL92.

Единственной структурой представления данных (как прикладных, так и системных) в реляционной базе данных (БД) является двумерная таблица. Любая таблица может рассматриваться как одна из форм представления теоретико-множественного понятия отношение (relation), отсюда название модели данных - реляционная.
В реляционной модели данных таблица обладает следующими основными свойствами:

  1. идентифицуруется уникальным именем;
  2. имеет конечное (как правило, постоянное) ненулевое количество столбцов;
  3. имеет конечное (возможно, нулевое) число строк;
  4. столбцы таблицы идентифицируются своими уникальными именами и номерами;
  5. содержимое всех ячеек столбца принадлежит одному типу данных (т.е. столбцы однородны), содержимым ячейки столбца не может быть таблица;
  6. строки таблицы не имеют какой-либо упорядоченности и идентифицируются только своим содержимым (т.е. понятие ?номер строки? не определено);
  7. в общем случае ячейки таблицы могут оставаться ?пустыми? (т.е. не содержать какого-либо значения), такое их состояние обозначается как NULL.

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

  1. требования уникальности содержимого каждой ячейки какого-либо столбца и/или совокупности ячеек в строке, относящихся к нескольким столбцам;
  2. запрета для какого-либо столбца (столбцов) иметь пустые (NULL) ячейки.

Ограничение в виде требования уникальности тесно связано с понятием ключа таблицы. Ключом таблицы называется столбец или комбинация столбцов, содержимое ячеек которого(ых) используется для прямого доступа (быстрого определения местоположения) к строкам таблицы. Различают ключи первичный (он может быть только единственным для каждой таблицы) и вторичные. Первичный ключ уникален и однозначно идентифицирует строку таблицы. Столбец строки, определенный в качестве первичного ключа, не может содержать пустое (NULL) значение в какой-либо своей ячейке. Вторичный ключ определяет местоположение, в общем случае, не одной строки таблицы, а нескольких подобных (в любом случае ускоряя доступ к ним, хотя не в такой степени как ключ первичный).
Ключи используются внутренними механизмами СУБД для оптимизации затрат на доступ к строкам таблиц (путем, например, их физического упорядочения по значениям ключей или построения двоичного дерева поиска).

Основными операциями над таблицами являются следующие.

  1. Проекция - построение новой таблицы из исходной путем включения в нее избранных столбцов исходной таблицы.
  2. Ограничение - построение новой таблицы из исходной путем включения в нее тех строк исходной таблицы, которые отвечают некоторому критерию в виде логического условия (ограничения).
  3. Объединение - построение новой таблицы из 2-ух или более исходных путем включения в нее всех строк исходных таблиц (при условии, конечно, что они подобны).
  4. Декартово произведение - построение новой таблицы из 2-ух или более исходных путем включения в нее строк, образованных всеми возможными вариантами конкатенации (слияния) строк исходных таблиц. Количество строк новой таблицы определяется как произведение количеств строк всех исходных таблиц.

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

Кроме перечисленных выше в языке SQL реализованы операции модификации содержимого строк таблицы и пополнения таблицы новыми строками (что теоретически может рассматриваться как операция объединения), а также операции управления таблицами.
Рассмотренные выше операции над таблицами реляционной БД обладая функциональной полнотой, будучи реализованы на практике в своем чистом и каноническом виде, как правило, крайне неэкономичны (в первую очередь это относится к комбинации операций ограничения и декартового произведения). Разработчики реальных реляционных СУБД прибегают ко всевозможным приемам и ухищрениям для минизации вычислительных затрат (в первую очередь, машинного времени) при выполнении этих операций. Общим способом, нашедшим отражение в языке SQL, повышения эффективности выполнения запросов в реляционных СУБД  являются импользование ключей индексов.

 В настоящее время наибольшее распространение получили реляционные SQL СУБД двух групп:

  1. мощные крупные коммерческие СУБД, ориентированные на хранение огромных объемов информации (от гигабайт);
  2. мобильные компактные свободно распространяемые (в том числе и в исходных кодах) СУБД, использование которых оправдано и для БД объемом всего лишь в десятки килобайт.

Получить бесплатную консультацию можно  по телефону +7 (4862) 442-770, +7 (960) 648-72-21.

Для расчёта стоимости услуг  воспользуйтесь калькулятором.

2017-12-13 07:16

КОМПАНИЯ ИКЦ ШаР.ИТ

“ИКЦ ШаР.ИТ” — это компания, состоящая из ИТ-специалистов, оказывающих профессиональные ИТ-услуги по созданию и обслуживанию офисной ИТ-инфраструктуры. Мы предлагаем большой спектр услуг и решений в области ИТ для малого бизнеса в Орле.

Rambler's Top100