- •1.Системы баз данных.
- •10. Реляционная модель. Терминология.
- •25. Процесс нормализации.
- •Vsize ( выраж ). Возвpащает количество байтов, котоpое занимает "выраж" во внутpеннем пpедставлении oracle. 33. Групповые функции.
- •35. Упорядочивание данных, найденных запросом.
- •41. Управление транзакциями.
- •46. Коррелированные подзапросы.
- •51. Именование объектов в базе данных.
25. Процесс нормализации.
Нормализация - процесс совершенствования реляционной модели, подъем уровня организации. Основывается на концепции функциональной зависимости. Назначение процесса нормализации: - Обеспечение целостности (приводит к исключению избыточности данных). - Создание формальной модели, которая будет наиболее независима от специфики приложений. - Снижение требований к объему памяти, вследствие чего идет повышение скорости поиска данных. Ненормализованная таблица содержит группу или несколько групп повторяющихся данных. 26. Нормальные формы.
Отношение находится в первой нормальной форме, если все значения его атрибутов атомарны, то есть все значения на пересечении строки и столбца структурно неделимы (содержат только одно значение). Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме, а также в таблице отсутствует частичная зависимость (каждый неключевой атрибут полностью зависит от полного первичного ключа, то есть от всех атрибутов, из которых он состоит). Неключевой атрибут функционально полно зависит от составного ключа, если он функционально зависит от всего ключа в целом, но не находится в функциональной зависимости от какого-либо атрибута, входящего в него. Отношение находится в третьей нормальной форме, если оно находится во второй нормальной форме, а также отсутствует транзитивная зависимость. То есть, ни один неключевой атрибут не зависит ни от другого неключевого атрибута. А также каждый неключевой атрибут нетранзитивно зависит от первичного ключа. 27. Ограничения целостности.
Ограничения целостности обладают следующими свойствами:
Ограничения целостности навязывают правила на уровне таблицы.
Ограничения целостности предотвращают удаления строк в случаях, если на эти строки в таблицы наложены ограничения.
Ограничения к таблице могут быть наложены на момент создания таблицы, а также после создания таблицы.
ORACLE автоматически генерирует имена ограничениям при их создании при помощи добавлению SYS_C уникального числа.
Существует 3 вида реляционной целостности: 1. Целостность сущности. Требование: уникальность строк. Ограничение: наличие первичного ключа (PK). 2. Ссылочная целостность. Обеспечивает правильную связь таблиц. Ограничение: наличие внешнего ключа (FK). 3. Корпоративная целостность. Представляет собой дополнительные правила, которые действуют в пределах организации. Ограничения (CHECK) задаются при описании столбцов. 28. Структура команды запроса.
SELECT что FROM откуда После команды SELECT могут быть следующие конструкции: 1. Имена столбцов 2. Арифметические выражения (+, -, *, /) 3. Заменители имен столбцов (SELECT ename as name FROM emp, SELECT ename name FROM emp) 4. Конкатиннированые столбцы (SELECT empno||' '||ename FROM emp). 5. Литералы - любой набор букв или цифр не содержащий имени столбца. Для английских символов одинарные кавычки для русских двойные. 29. Типы данных SQL. Типы данных SQL: строковые, числа с плавающей точкой (дробные числа) и целые числа, дата и время Cтроковые. Описание. CHAR(size) Строки фиксированной длиной (могут содержать буквы, цифры и специальные символы). Можно записать до 255 символов VARCHAR(size) Может хранить не более 255 символов. TEXT Может хранить не более 65 535 символов. LONGTEXT Может хранить не более 4 294 967 295 символов. Числа с плавающей точкой (дробные числа) и целые числа. Описание. INT(size) Диапазон от -2 147 483 648 до 2 147 483 647 FLOAT(size,d) Число с плавающей точкой небольшой точности. DOUBLE(size,d) Число с плавающей точкой двойной точности. Дата и время. Описание. DATE() Дата в формате ГГГГ-ММ-ДД DATETIME() Дата и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС TIME() Время в формате ЧЧ:ММ:СС YEAR() Год в двухзначном или в четырехзначном формате. 30. Логические операторы, SQL-операторы.
Логические операторы проверяют истину некоторого условия. Логические операторы, например оператор сравнения, возвращают значение типа Boolean: TRUE, FALSE или UNKNOWN. ALL - TRUE, если все сравнения в наборе равны TRUE. AND - TRUE, если оба выражения типа Boolean равны TRUE. ANY - TRUE, если любое из сравнений в наборе равно TRUE. BETWEEN - TRUE, если операнд принадлежит указанному диапазону. EXISTS -TRUE, если вложенный запрос возвращает как минимум одну строку. IN - TRUE, если операнд содержится в заданном списке выражений. LIKE - TRUE, если оператор удовлетворяет шаблону. NOT - Меняет значение оператора типа Boolean на противоположное. OR - TRUE, если одно из выражений типа Boolean равно TRUE. SOME - TRUE, если некоторые из сравнений в наборе равны TRUE. 31. Функции SQL для конвертирования типов данных.
TO_CHAR(d[,фмт]) Преобразование d в символьный вид по формату, определенному с помощью "фмт"(символьная переменная).
TO_DATE("символ" [,фмт]). Преобразование даты в символьном виде в значение даты. "фмт"- это строка,определяющая формат строки "символ". TO_NUMBER(символ) Преобразование строки "символ", представляющей число, в числовое значение. 32. Функции SQL для работы с любыми типами данных.
DECODE (выраж, строк1, результ1, строк2, результ2, ..., [рез-т по умолч]). Если "выраж" pавно любой из стpок "строк1", возвpащает соответствующее "результ"; если нет, то возвpащает "рез-т по умолч". Если соответствия не найдено, а "рез-т по умолч" опущен , то возвpащается NULL (пустое значение). " GREATEST ( выраж,выраж,... ). Возвpащает наибольшее из списка значений.
LEAST ( выраж,выраж,...). Возвpащает наименьшее из списка значений.
NVL ( x,выраж ). Если х имеет пустое значение (null), возвpащает "выраж"; если х имеет непустое значение, то возвpащается х.
