Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭК_Б_727111.doc
Скачиваний:
10
Добавлен:
17.08.2019
Размер:
3.23 Mб
Скачать

5. Типовые решения для организации бд (фирмы, продукты). Интеграция данных в хранилище.

???

6. Хранимые процедуры.

Храни́мая процеду́ра — объект базы данных, представляющий собой набор SQL-инструкций, который компилируется один раз и хранится на сервере. Хранимые процедуры очень похожи на обыкновенные процедуры языков высокого уровня, у них могут быть входные и выходные параметры и локальные переменные, в них могут производиться числовые вычисления и операции над символьными данными, результаты которых могут присваиваться переменным и параметрам. В хранимых процедурах могут выполняться стандартные операции с базами данных (как DDL, так и DML). Кроме того, в хранимых процедурах возможны циклы и ветвления, то есть в них могут использоваться инструкции управления процессом исполнения.

Сохраняемые процедуры похожи на определяемые пользователем функции (UDF). Основное различие заключается в том, что пользовательские функции можно использовать как и любое другое выражение в SQL запросе, в то время как сохраняемые процедуры должны быть вызваны с помощью функции CALL:

CALL процедура(…) Или EXECUTE процедура(…)

Сохраняемые процедуры могут возвращать множества результатов, то есть результаты запроса SELECT. Такие множества результатов могут обрабатываться, используя курсоры, другими сохраненными процедурами, возвращая указатель результирующего множества, либо же приложениями. Сохраняемые процедуры могут также содержать объявленные переменные для обработки данных и курсоров, которые позволяют организовать цикл по нескольким строкам в таблице. Стандарт SQL предоставляет для работы выражения IF, LOOP, REPEAT, CASE и многие другие. Сохраняемые процедуры могут принимать переменные, возвращать результаты или изменять переменные и возвращать их, в зависимости от того, где переменная объявлена.

Реализация сохраняемых процедур варьируется от одной СУБД к другой. Большинство крупных поставщиков баз данных поддерживают их в той или иной форме. В зависимости от СУБД, сохраняемые процедуры могут быть реализованы на различных языках программирования, таких, как SQL, Java, C или C++. Сохраняемые процедуры написанные не на SQL могут самостоятельно выполнять SQL-запросы, а могут и не выполнять. Все более широкое использование сохраняемых процедур привело к появлению процедурных элементов в языке SQL стандарта SQL:1999 и SQL: 2003 в части SQL/PSM. Это сделало SQL императивным языком программирования. Большинство СУБД предлагают собственные проприетарные и расширения производителя, сверх SQL/PSM.

Билет №20

1. Квадратичная аппроксимация (мнк).

МНК заключается в том, чтобы построить такой полином Qm(x)= , что сумма квадратичных отклонений значений аппроксимируемой и аппроксимирующей функций, называемая квадратичным отклонением, в узлах была бы минимальной.

Очевидно, что минимума квадратичного отклонения Φ можно добиться засчёт изменения коэффициентного полинома Qm(x) a0, am. Условием минимума является равенство 0 частных производных по всем коэффициентам a0,…,am. Это дает систему m+1 уравнения с m+1 неизвестным.

Раскрывая скобки и выполняя суммирования получаем:

+ +…+am

Система представляет собой СЛАУ относительно коэффициента аi . Решив систему, построим полином Qm(x), аппроксимирующий функцию yi=f(xi) и минимизирующий квадратичное отклонение.

Можно доказать, что если среди точек х1, х2,…, xn нет совпадающих, m≤n, то определитель системы отличен от нуля, следовательно, система имеет единственное решение.

Замечание: Функция Q(x) необязательно должна быть представлена полиномом вида . Единственным критерием выбора этой функции является возможность минимизации суммы квадратов отклонений. Как правило, используют аппроксимирующий полином не выше 3-ей степени.

{ - разность между аппроксимируемой и аппроксимирующей функциями.

Мы минимизируем сумму площадей квадратов, построенных на разности.