Лекция 14. Управление реляционными базами данных

Скачать

Содержание лекционного занятия:

·         Краткая история языка SQL

·         Типы команд SQL

·         Типы данных SQL/92

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

Сейчас наибольшее распространение получил язык SQL, который является един­ственным языком реляционных баз данных, принятым в качестве стандарта ANSI.

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

Краткая история языка SQL

Язык реляционных баз данных SQL был разработан в середине 70-х годов в рам­ках исследовательского проекта экспериментальной реляционной СУБД System R компании IBM. Данный проект включал в себя разработку реляционной системы управления базами данных и языка SEQUEL (Structured English Query Language). Исходное название SEQUEL только частично отражало суть этого языка.

В конце 70-х годов модифицированный вариант языка SEQUEL, получивший на­звание SQL, был выпущен корпорацией Oracle в качестве языка коммерческой системы управления базами данных. В 1983 г. компания IBM выпустила SQL в качестве языка управления СУБД DB2.

Американский национальный институт стандартов (ANSI) принял язык SQL в качестве стандарта в 1986 г. С тех пор этот стандарт пересматривался два раза — в 1989 г. были внесены некоторые незначительные изменения, а в 1992 г. стандарт SQL был довольно существенно расширен и в настоящее время известен под на­званием ANSI SQL-92 или SQL/92.

Следует понимать, что ANSI SQL — всего лишь стандарт, не являющийся реальным языком. Каждый производитель систем управления базами данных, как правило, пред­лагает собственную реализацию языка SQL.

Типы команд SQL

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

·         DDL (Data Definition Language) — язык определения данных. Команды дан­ной группы используются для создания и изменения структуры объектов базы данных (например, для создания и удаления таблиц);

·         DML (Data Manipulation Language) — язык манипулирования данными. Ко­манды DML используются для манипулирования информацией, содержащей­ся в объектах базы данных;

·         DCL (Data Control Language) — язык управления данными. Соответствующие команды  предназначены для управления доступом к информации, хранящейся в базе данных;

·         DQL (Data Query Language) — язык. Это наиболее часто используемые коман­ды, предназначенные для формирования запросов к базе данных (запрос — это обращение к базе данных для получения соответствующей информации);

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

·         команды управления транзакциями.

Типы данных SQL/92

Типы данных, используемые в стандартном SQL, можно подразделить на следую­щие группы:

·         строковые типы;

·         числовые типы;

·         типы для представления даты и времени.

Строковые типы

В SQL/92 определены два строковых типа:

·         символьные строки фиксированной длины;

·         символьные строки переменной длины.

Числовые типы

Числовые типы подразделяются на:

·         целочисленные типы;

·         вещественные типы с фиксированной точкой;

·         вещественные типы с плавающей точкой;

·         двоичные строки фиксированной и переменной длины.

Типы для представления даты и времени

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

Иногда типы данных, предназначенные для хранения времени и даты, называются темпоральными.

В стандарте SQL определены следующие типы данных для хранения информации о дате и времени:

·         DATE — используется для хранения даты;

·         TIME — используется для хранения времени;

·         TIMESTAMP — хранит дату и время;

·         INTERVAL — хранит промежуток времени между двумя датами или между двумя моментами времени.

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

Вопросы для самоконтроля:

1.Язык определения схем данных (Schema Definition Language, SDL)

2.Язык манипулирования данными (Data Manipulation Language, DML)

 

Рекомендуемая литература:

1.      Кузнецов С.Д. SQL. Язык реляционных баз данных.-М:Майор,2001. 192 с
  1. Кузнецов С.Д. СУБД и файловые системы. - М.: Майор, 2001. - 176 с.


Скачать


zharar.kz