Реферат: по Основам объектно-ориентированного программирования - Refy.ru - Сайт рефератов, докладов, сочинений, дипломных и курсовых работ

по Основам объектно-ориентированного программирования

Рефераты по информатике » по Основам объектно-ориентированного программирования

Риддерқ. ҚұмашҢұрғалиеватындағыколледжмекемесінің филиалы

Филиал учреждения «Колледж имени Кумаша Нургалиева»

г. Риддер


Обязательная контрольная работа

По дисциплине «Основы объектно-ориентированного программирования»

обучающегося IV курса группы 07-ПРО VII семестра

специальности 3706002 «Программное обеспечение

вычислительной техники и автоматизированных систем»

Богдаева Евгения


Вариант IV


г. Риддер, 2011 год


Задание

Создать удаленную базу данных с двухзвенной архитектурой с помощью SQL-сервера Interbase, в которую входят таблица «Магазины» с полями: название, адрес и таблица «Игрушки» включающая поля: наименование, цена, его производитель. Таблицы связаны отношением один-ко-многим.

Создать приложение в Delphi. Найти , в которой цена на введенное в режиме диалога лекарства наименьшая.

Построить диаграмму, отображающую стоимость данного лекарства в каждой аптеке. Создать SQL-запрос и отчет.


Логическая модель


1)Создание Базы данных в InterBase


Таблица магазины


/* Table: MAGAZINI, Owner: SYSDBA */

CREATE TABLE "MAGAZINI"

(

"NOMER" INTEGER NOT NULL,

"NAZVANIE" CHAR(20) CHARACTER SET WIN1251,

"ADRESS" CHAR(20) CHARACTER SET WIN1251,

PRIMARY KEY ("NOMER")

);

SET TERM ^ ;

/* Triggers only will work for SQL triggers */


CREATE TRIGGER "TRI_DO" FOR "MAGAZINI"

ACTIVE BEFORE INSERT POSITION 0

AS

BEGIN

NEW.nomer = GEN_ID(geni, 1);

END

^

CREATE TRIGGER "TRI_IZM" FOR "MAGAZINI"

ACTIVE BEFORE UPDATE POSITION 0

AS

BEGIN

IF (OLD.nomer <> NEW.nomer)

THEN UPDATE igruchki

SET nomer_i = NEW.nomer

WHERE nomer_i = OLD.nomer;

END

^


CREATE TRIGGER "TRI_1" FOR "MAGAZINI"

ACTIVE AFTER DELETE POSITION 0

AS

BEGIN

DELETE FROM igruchki

WHERE igruchki.nomer_i = magazini.nomer;

END

^

COMMIT WORK ^

SET TERM ;^


Таблица игрушки


/* Table: IGRUSHKI, Owner: SYSDBA */

CREATE TABLE "IGRUSHKI"

(

"NOMER_IG" INTEGER NOT NULL,

"NOMER" INTEGER NOT NULL,

"NAZVANIE" CHAR(20) CHARACTER SET WIN1251,

"CENA" INTEGER,

"PROIZVODITEL" CHAR(20) CHARACTER SET WIN1251,

"VOZRAST" INTEGER,

PRIMARY KEY ("NOMER_IG")

);

ALTER TABLE "IGRUSHKI" ADD FOREIGN KEY ("NOMER") REFERENCES MAGAZINI ("NOMER");


Заполнение таблиц


Главная таблица «Магазины»

Дочерняя таблица «Игрушки»


2)Создание приложения

Главная форма программы


База данных программы


Форма на которой отображаются Магазины и Игрушки.

Так же на этой форме имеется «поиск по возрасту»

procedure TForm1.Edit1Change(Sender: TObject);

begin

if Length(Edit1.Text)>0 then

DM.igrushki.Filtered:=true

else

DM.igrushki.Filtered:=false;

DM.igrushki.Filter:='vozrast='''+Edit1.Text+'''';

end;


Диаграмма «производителей»

Отчет


SELECT Magazini.NAZVANIE, Igrushki.NAZVANIE, Igrushki.CENA, Igrushki.VOZRAST

FROM IGRUSHKI Igrushki

INNER JOIN MAGAZINI Magazini

ON (Magazini.NOMER = Igrushki.NOMER)

ORDER BY Igrushki.VOZRAST