русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Алгоритмы распределения памяти


Дата добавления: 2013-12-23; просмотров: 659; Нарушение авторских прав


Задания для самостоятельной работы

Удаление функций

RETURN

RETURNS TABLE

Редактирование функций

END

RETURN

BEGIN

SQL-КОДЫ

 

Определение функций Multi-statementтакже практически полностью ана­логично определению функций scalar и inline, рассмотренных ранее.

 

Но есть и отличия:

1. Первое отличие связано с тем, что здесь необходимо

a.в отличие от функций inline и scalar - ука­зать имя локальной переменной типа TABLE, в которой будет возвращен результат выполнения функции;

b.определять тип возвращаемо­го значения;

c.явно определить набор столбцов, которые будут при­меняться для хранения полученных данных.

В этих функциях можно дополнительно определять индексы, ограничения целостности и т. д.

2. Второе отличие связано с завершением работы функции. Завершение ра­боты функции происходит при выполнении команды return, однако не тре­буется указание значения, которое будет возвращено как результат выполне­ния функции. Всегда возвращается содержимое переменной типа TABLE, указанной после ключевого слова returns.

 


Может возникнуть необходимость внести в уже созданную функцию некото­рые изменения. Для этого вы можете использовать команду alter function.

Параметры и синтаксис команды alter function аналогичны команде create function, требуется лишь заменить слово create на alter.

 

Пример 8. Команда обновления функции:

ALTER FUNCTION MyFunc ( @Char char, @n int)

SELECT Фамилия, Имя, Отчество, Город, Телефон

FROM Клиенты INNER JOINТелефоны_клиентов

ONКлиенты.ID_клиента = Телефоны_клиентов.Клиент

WHERE LEFT (Фамилия, 1) = @Char AND LEN(Фамилия)<=@n


Для удаления функции используется команда drop function, имеющая син­таксис:



DROP FUNCTION {[имя_схемы. ] имя_функции } [, ...n]

 

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

 

Пример использования команды:

DROP FUNCTION MyFunc, MyFirstFunction


Разработать и применить следующие функции пользователя:

1. скалярную функцию, определяющую общий объем поставок (количество_ед_товара) заданной фирмы-поставщика.

2. скалярную функцию, определяющую доход от продаж для заданной категории товаров.

3. скалярную функцию, возвращающую список из 10 товаров, принесших самый большой доход за последний год.

4. Inline-функцию, возвращающую наименования товаров, приобретенных заданным клиентом.

5. Inline-функцию, выводящую список клиентов, у которых номера телефонов содержат код 8(495) или 8(499).

6. Multi-statement или Inline – функцию, вычисляющую для каждого товара среднюю цену продаж и из таблицыПерсонал выводит фамилии продавцов, у которых имеются сделки с ценой продажи ниже средней.

7. Разработать собственную Multi-statement функцию. Привести пример ее применения.

Следует ли назначать каждому процессу одну непрерывную область физической памяти или можно выделять память «кусками»? Должны ли сегменты програм­мы, загруженные в память, находиться на одном месте в течение всего периода выполнения процесса или можно ее время от времени сдвигать? Что делать, если сегменты программы не помещаются в имеющуюся память? Разные ОС по-разному отвечают на эти и другие базовые вопросы управления памятью. Далее будут рассмотрены наиболее общие подходы к распределению памяти, которые были характерны для разных периодов развития операционных систем. Некото­рые из них сохранили актуальность и широко используются в современных ОС, другие же представляют в основном только познавательный интерес, хотя их и сегодня можно встретить в специализированных системах.

На рис. 5.7 все алгоритмы распределения памяти разделены на два класса: алго­ритмы, в которых используется перемещение сегментов процессов между опера­тивной памятью и диском, и алгоритмы, в которых внешняя память не привлека­ется.



<== предыдущая лекция | следующая лекция ==>
 | ЭЛЕКТРОННАЯ ЦИФРОВАЯ ПОДПИСЬ В КОММЕРЧЕСКОЙ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.