русс | укр

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

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

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

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


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

Б. Представления, триггеры, процедуры


Дата добавления: 2015-08-31; просмотров: 900; Нарушение авторских прав


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

– создать представление Students_details:

ф. Oracle – Object Browser; кн. Create; выбр. View → ф. Create View;

View Name ← Students_details;

– ввести программный код:

select stud_id, fam, im, ot, spec, kurs, gr from students

– сохранить представление:

ф. Create Materialized View; кн. Next → ф. Create Materialized View; кн. Create;

– проверить работоспособность представления:

ф. Oracle – Object Explorer; список ← выбр. Materialized Views;

выбр. Students_details; ф. Students_details; кн. Data → результаты на экране

– модифицировать данные с помощью именованного представления:

ф. Students_details; кн. Data; кн. Insert row ► ф. Students_info;

внести данные; кн. Create;

открыть таблицу Students и проверить наличие новой строки.

Аналогичным образом проверить работоспособность представления для операций обновления и удаления данных.

2. Создать материализованное представление для хранения кратких сведений о студентах (идентификатор, номер зачетки, фамилия и инициалы, идентификатор группы) и их успеваемости:

– создать материализованное представление Students_info:

ф. Oracle – Object Browser; кн. Create; выбр. Materialized View ►

ф. Create Materialized View; Materialized View Name ← Students_info;

– ввести программный код:

select stud_id, no_zk,

concat(concat(concat(rtrim(fam),' '),concat(substr(im,1,1),'.')),concat(substr(ot,1,1),'.'))

as FIO,

concat(concat(spec,'-'), concat(kurs,gr)) as GRUPPA, name as Predmet, ocenka, data

from students, uspev, subjects where students.stud_id=uspev.student

and subjects.predm_id=uspev.predmet



– сохранить представление:

ф. Create Materialized View; кн. Next → ф. Create Materialized View; кн. Create;

– проверить работоспособность представления:

ф. Oracle – Object Explorer; список ← выбр. Materialized Views; выбр. Students_info;

ф. Students_info; кн. Data → результаты на экране

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

– написать программный код триггера (PL/SQL):

ф. Oracle – Object Browser; кн. Home → ф. Oracle; кн. SQL → кн. SQL Commands; ф. SQL Commands ввести код:

CREATE OR REPLACE TRIGGER Stud_uspev

BEFORE INSERT OR UPDATE ON Uspev

FOR EACH ROW

DECLARE

kurs number;

stud number; data Date; cnt number;

BEGIN

stud := :new.student;

data := :new.data;

SELECT COUNT(*) INTO cnt FROM Uspev WHERE Student=stud and Data=data;

if cnt > 1 then

dbms_output.put_line('Больше нельзя');

end if;

END;

/

– проверить работоспособность триггера, вводя данные в таблицу Uspev.

4. Создать хранимую процедуру для вывода информации о количестве студентов в группе по ее номеру:

– создать процедуру Count_group:

ф. Oracle – Object Browser; кн. Create; выбр. Procedure ► ф. Create Procedure;

Procedure Name ← Count_group; уст. Include Arguments; кн. Next

– определить входные и выходные параметры процедуры:

Argument Name ← gr; In/Out ← In; Argument Type ← Varchar2;

перейти на след. cтроку;

Argument Name ← count; In/Out ← Out; Argument Type ← Number; кн. Next

– ввести программный код процедуры:

вкл. Procedure Body ← select count(*) into count from students where gr=gr;

кн. Next;

– сохранить процедуру

ф. Create Procedure; кн. Finish → ф. Create Procedure; кн. Create

– проверить работоспособность процедуры

ф. Oracle – Object Browser; кн. Home ► ф. Oracle;

кн. SQL ► кн. SQL Commands; ф. SQL Commands ввести код:

DECLARE c NUMBER;

BEGIN

COUNT_GROUP('номер группы',c);

DBMS_OUTPUT.PUT_LINE(Число студентов в группе: ' || c);

END;

/

кн. Run → результат на экране

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

6. Создать хранимую процедуру для вывода списка студентов группы по ее номеру:

ф. Oracle – SQL Commands; ввести код:

create or replace procedure printGroup(g in varchar2)

is

cursor c_stud is select fam from students where gr=g;

r_stud c_stud%ROWTYPE;

begin

open c_stud;

loop

fetch c_stud into r_stud;

exit when c_stud%NOTFOUND;

DBMS_OUTPUT.put_line(r_stud.fam);

end loop;

close c_stud;

end;

/

кн. Run → Results: Procedure created.

– проверить работоспособность процедуры

DECLARE C INTEGER;

BEGIN

printGroup('номер группы');

END;

/
кн. Run → результат на экране

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

В. Приложения Oracle

1. Создать приложение-отчет для вывода информации о студентах из таблицы Students:

ф. Oracle | кн. Application Builder → ф. Application Builder | кн. Create> ►

ф. Create Application | уст. Create Application; кн. Next ►

Name ← Students_report; кн. Next ► Select Page Type ← уст. Report;

Page Source ← Table; Table Name ← Students; кн. Add Page ►

кн. Next ► Tabs ← One Level of Tabs; кн. Next ►

Copy Shaped Components from Another Application ← No; кн. Next ►

Authentication Scheme← No Authentication; кн. Next ►

Select a theme ← выбрать любой вариант представления; кн. Next ►

кн. Create; кн. Run

2. Аналогичным образом создать приложение-отчет для вывода информации о предметах из таблицы Subjects.

3. Создать приложение-отчет для вывода информации об успеваемости студентов из таблиц Students, Subjects и Uspev:

ф. Oracle | кн. Application Builder ► ф. Application Builder | кн. Create> ►

ф. Create Application | уст. Create Application; кн. Next ►

Name ← Uspev_report; кн. Next ►

Select Page Type ← уст. SQL Query; Page Name ← Uspev_query;

кн. Query Builder ► ф. Query Builder: выбр. Students, Subjects, Uspev;

 

выделить stud_ID в графическом объекте Students и перетащить его на student

в объекте Uspev; аналогично – для predm_ID из Subjects.

 

Выбрать поля: Fam, im, ot – из Students; name – из Subjects; ocenka, data – из Uspev;

 

Кн. Run; просмотреть результат на экране; кн. return; кн. Add Page; кн. Next ►

Tabs ← One Level of Tabs; кн. Next ►

Copy Shaped Components from Another Application ← No; кн. Next ►

Authentication Scheme ← No Authentication; кн. Next ►

Select a theme ← выбрать любой вариант представления; кн. Next ►

кн. Create; кн. Run

4. Создать приложение-форму для редактирования информации о студентах из таблицы Students:

 

 

ф. Oracle | кн. Application Builder → ф. Application Builder | кн. Create> ►

ф. Create Application | уст. Create Application; кн. Next ► Name ← Students_form;

кн. Next ► Select Page Type ← уст. Form; Table Name ← Students; кн. Add Page;

кн. Next ► Tabs ← One Level of Tabs; кн. Next ► Copy Shaped Components from

Another Application ← No; кн. Next ► Authentication Scheme ← No Authentication;

кн. Next ► Select a theme ← выбрать любой вариант представления; кн. Next ►

кн. Create; кн. Run

5. Аналогичным образом создать приложение-форму для редактирования информации о предметах из таблицы Subjects.



<== предыдущая лекция | следующая лекция ==>
Порядок выполнения работы | Г. Oracle и ASP.NET


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


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

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

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


 


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

 
 

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

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