- •Назначение и основные компоненты системы баз данных. Одно, двух и трехзвенная архитектура системы бд.
- •Субд, их функции и виды, обзор современных субд.
- •Архитектура приложений бд, механизмы доступа к данным.
- •Модели данных: иерархическая, сетевая, реляционная, объектно – ориентированная модель.
- •Реляционная модель данных (структурная часть): домен, атрибут, кортеж, отношение и его свойства, первичный ключ.
- •6. Реляционная модель данных (целостная часть): целостность отношений и ссылок, внешний ключ, индексы.
- •Реляционная модель данных (манипуляционная часть): язык манипулирования данными для реляционной модели; реляционная алгебра.
- •Создание базы данных (на примере InterBase, FireBird), объекты, входящие в состав бд и их назначение.
- •Описание таблицы:
- •Sql, выбор данных, назначение и примеры использования инструкций: select, all, distinct, from, where,order by, вычисляемых полей, логических выражений.
- •Sql, выбор данных, назначение и примеры использования инструкций: union, group by, having, агрегатных функций.
- •11. Sql, выбор данных из нескольких таблиц, примеры внутреннего и внешнего соединения.
- •12.Sql, подзапросы, назначение и примеры использования инструкций: exist, singular, all, any
- •13. Sql, добавление, изменение, удаление данных.
- •Values ('Иванов', 35);
- •15.Хранимые процедуры, использование переменных, циклов.
- •16.Триггеры.
- •Лабораторная работа 9 задание 3
- •17.Представленния (view).Генераторы.
- •18.Транзакции их назначение и реализация
- •19.Транзакции уровни изоляции и управление транзакциями в приложении.
- •Уровни изоляции транзакции:
- •20.Администрирование сервера
- •25. Разработка печатных документов с использованием редактора отчетов.
- •Разработка приложения баз данных в Delphi. Использование компонентов InterBase eXpress (ibx): tibStoredProc, tibsql, динамическое формирование запросов sql.
- •Разработка приложения баз данных в Delphi. Использование компонентов InterBase eXpress (ibx): tibDatabase. Создание модифицируемых наборов данных, механизм master-detail.
Values ('Иванов', 35);
После конструкции INSERT INTO и имени базы я поставил скобки, где перечислил поля,
которые необходимо заполнить (Фамилия и Возраст). В скобках после слова VALUES я
перечисляю эти поля в той же последовательности, в которой перечислил перед этим
(сначала фамилия, а потом возраст).
Теперь представь, что ты хочешь сохранить результат запроса SELECT в отдельной
таблице. Для этого в SQL всё уже предусмотрено. Тебе нужно только написать:
INSERT INTO User1
SELECT *
FROM User2
WHERE Age=10
В этом примере сначала выполнится запрос SELECT:
SELECT *
FROM User2
WHERE Age=10
После его выполнения, результат будет занесён в таблицу User1.
Для удаления есть команда DELETE :
DELETE FROM User1
Всё очень просто, эта конструкция удаляет абсолютно все строки из таблицы User1.
Можно сказать, что этим мы очищаем таблицу.
Теперь рассмотрим другой пример:
DELETE FROM User1
WHERE Age=10
Этот пример удаляет только те строки, в которых поле Age равно 10.
14. Хранимые процедуры. Создание, изменение, удаление, вызов хранимойпоцедуры. Назначение и примеры использования инструкций: SUSPEND, SELECT.
Хранимая процедура – это программа, хранящаяся в базе данных. Она может вызываться из приложения клиента, других хранимых процедур, в нее можно передавать параметры и получать результаты.
Виды хранимых процедур:
1. Процедура выбора – возвращает набор данных, т.е. несколько строк.
2. Исполняемая процедура (процедура действия) – может возвращать только одну строку или вообще ничего не возвращать.
Язык хранимых процедур – это процедурный язык, дополненный возможностями языка SQL.
Оператор внутри процедуры заканчивается;
Создание процедуры
CREATEPROCEDURE<имя процедуры> [(<список входных параметров>)]
[RETURNS (<список выходных параметров>)]
AS
[Описание дополнительных переменных]
BEGIN
<Тело процедуры>
END
ALTER – изменение процедуры
DROP – удаление процедуры
Вызов процедуры
1. Если она возвращает набор данных, то из оператора SELECT
SELECT * FROM<имя процедуры>
[(входные параметры)].
2. Если процедура действия, то EXECUTEPROCEDURE
<имя процедуры>
[(входные параметры)].
15.Хранимые процедуры, использование переменных, циклов.
В MySQL для работы с циклами применяются операторы WHILE, REPEAT и LOOP.
Оператор цикла WHILE
Сначала синтаксис:
WHILE условиеDO запрос
END WHILE
Запрос будет выполняться до тех пор, пока условие истинно.
Процедуры бывают следующих видов:
Хранимая процедура выбора. Может возвращать несколько строк значений параметров, то есть набор данных.
Хранимая процедура действия (исполняемая процедура). Они могут возвращать только одну строку значений параметров или вообще не возвращать данных, а только реализовывать какие-либо действия.
Триггеры. Это хранимые процедуры не возвращающих параметров и в них нельзя передавать параметры и они связываются с каким-либо событием в базе данных.
Создание:
SetTerm^; CREATEProcedureимя_процедуры[ (список входных параметров)]
[Returns (список всех параметров)]
As
Описание переменных;
Begin
Тело процедуры
End^
SetTerm;^
/*…*/ - комментарии.
Begin …End
= – оператор присваивания
Если это процедура выбора то вызывается она инструкцией Select :
Select *
Fromимя_процедура (параметры)
Исполняемые процедуры
ExecuteProcedureимя_процедуры (параметр)
Описание переменных:
DeclareVariable
<имя переменной><тип данных>;
Xinteger;
Переменные в инструкции SQL указываются - :имя_переменной (:X)
Операция select в хранимой процедуры используется для выдачи одной строки данных и должен быть дополнен:
Select …
Intoсписок_переменных;
Пример:
CREATE Procedure pKolvo (inTovar Integer)
Returns (ravg float, rsum integer)
As
Begin
Select Avg (kolvo), Sum (kolvo)
FROM Rashod
Where NTovar =: inTovar
Into :ravg, :rsum;
Suspend;
End
Suspend – приостанавливает процедуру для возврата данных.