Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сетевые БД / Lec_2014 / консп_лек_1.doc
Скачиваний:
55
Добавлен:
11.04.2015
Размер:
671.23 Кб
Скачать

24

Конспект лекций

Содержание

1. Введение

1.1. Основные особенности языка SQL

1.2. Алфавит языка

1.3. Лексическая структура языка

1.4. Стандартные процедуры и функции

1.5. Процедуры ввода/вывода

1.6. Таблицы учебной база данных

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

2. Простые типы данных

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

2.2. Символьные типы данных

2.3. Тип данных даты-времени

2.4. Преобразование типов

2.5. Порядок вычисления выражений

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

3. Типы команд языка SQL

3.1. Команды обработки данных

3.2. Управление транзакциями

3.3. Команды определения данных

3.4. Команды управления данными

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

4. Управление привилегиями

4.1. Понятие привилегии

4.2. Типы привилегий

4.3. Системные привилегии

4.4. Объектные привилегии

4.5. Роли

5. Интегрированная среда Oracle 10g XE

5.1 Как начать работу с Oracle 10g XE

5.2 Ваша первая программа

Ответы на вопросы для самоконтроля

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

1. Введение

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

  • представляют данные в форме двумерных таблиц

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

  • не требуют от пользователя понимания ее физической структуры

  • предоставляют информацию о своем содержании и структуре в системных таблицах

  • управляются посредством языка SQL

  • поддерживают пустые (NULL) значения

Таблицы

Таблицы являются основными структурными элементами реляционных баз данных. Каждая таблица хранит информацию об одном типе объекта. Свойства таблиц описаны в разделе «Реляционная модель данных».

Межтабличные связи

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

Физическая реализация

Физическая структура базы данных и пути доступа к данным не задаются пользователем. Эта работа возлагается на систему управления базами данных (СУБД). Пользователь указывает, что ему нужно, а как это сделать – «знает» программное обеспечение СУБД. Благодаря этому БД является гибкой, поскольку данные могут физически перемещаться или изменяться без необходимости перекодировки прикладных программ.

Системные таблицы

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

Язык SQL

Пользователи реляционной БД выдают команды на языке SQL (Structured Query Language, язык структурированных запросов), напоминающем английский. SQL является непроцедурным языком, т.е. он обрабатывает сразу весь набор строк, а не по отдельной строке за один раз.

Пустые значения

Реляционные БД должны поддерживать пустые значения (NULL) для столбцов (полей), значения которых являются неизвестными или неопределенными. Пустые значения – это не пробелы или нули в числовых полях; они обрабатываются иначе, чем обычные значения столбцов. Например, вводя информацию о новом заказчике, можно знать его имя, но не знать номер его банковского счета. Поле номера банковского счета для новой записи заказчика, следовательно, нужно пока оставить пустым.

Описание первой версии языка SQL (SEQUEL2) было опубликовано в 1976 г. в ноябрьском номере журнала IBM Journal of R&D. В1979 г. корпорация Oracle выпустила первую коммерчески доступную реализацию SQL. SQL не является языком программирования в традиционном представлении. На нем пишутся не программы, а запросы к базе данных. Поэтому SQL – декларативный язык. Это означает, что с его помощью можно сформулировать, что необходимо получить, но нельзя указать, как это следует сделать. В частности, в отличие от процедурных языков программирования (СИ, Паскаль, Ада), в языке SQL отсутствуют такие операторы, как if/then/else, for, while, break, continue и т.д..

1.1. Основные особенности языка SQL, обусловившие его выдающийся успех, заключаются в следующем:

  1. Это традиционный язык запросов реляционных баз данных;

  2. Обрабатывает сразу набор строк данных, а не по отдельной строке за один раз;

  3. Набор операторов языка отражает действия, которые необходимо выполнять для хранения, изменения данных в БД и извлечения этих данных;

  4. Синтаксис языка напоминает синтаксис простых предложений английского языка.

Мы будем изучать реализацию языка SQL фирмы Oracle для компьютеров под управлением операционной системы Windows XP – систему Oracle 10g Express Edition.

Система Oracle 10g Express Edition (XE) имеет интегрированную среду программирования, т.е. совокупность программ, объединенных в общую систему, которая позволяет писать и редактировать программы, компилировать их, компоновать, отлаживать и запускать на выполнение, не выходя из среды. Включает в себя:

  1. универсальный текстовый многооконный редактор для создания и корректировки текстов;

  2. компилятор – программу, переводящую текст программы в машинные коды;

  3. систему контекстной информационной помощи.

1.2. Алфавит языка – совокупность допустимых в языке символов. Состоит из следующих символов:

  1. заглавные и строчные латинские буквы и знак «подчерк»: A…Z, a…z, _

  2. цифры 0…9

  3. 22 специальных символа: +, -, *, /, >, <, (, ), [, ], @, #, $, ….

1.3. Лексическая структура языка включает следующие элементы:

  1. служебные (зарезервированные, ключевые) слова (52 слова): select, from, where… . Это группа слов, смысл которых фиксирован в языке, их нельзя использовать в качестве имен, вводимых программистом,

  2. идентификаторы (имена) - для обозначения таблиц, полей, типов… Образуются из букв и цифр, начинаются всегда обязательно с буквы, длина не должна превышать 30 символа. Не существует различия между прописными и строчными буквами: Например, IDX, idx, Idx – один и тот же идентификатор. Допускается в именах использовать заглавные и строчные латинские буквы, а также символы $, # и _, если они не являются первыми символами имени. Имена не могут содержать знаков пунктуации, пробелов или дефисов.

Пример:

Верная запись: Tab1, name_a, g255

Неверная запись: 1tab, name a, g*255

  1. в тексте программы допускаются фрагменты пояснительного текста – комментарии (только для скриптов и программ PL/SQL), которые располагаются между знаками /* */ и компилятором игнорируются. Для однострочных комментариев можно использовать два дефиса.

Пример:

--комментарий

/*комментарий*/

/* тоже комментарий, но

на двух строках */

Соседние файлы в папке Lec_2014