Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Реферат: Лабораторные работы (в ХГТУ)

Название: Лабораторные работы (в ХГТУ)
Раздел: Рефераты по информатике, программированию
Тип: реферат Добавлен 15:13:43 04 июля 2005 Похожие работы
Просмотров: 51 Комментариев: 22 Оценило: 4 человек Средний балл: 5 Оценка: неизвестно     Скачать

Задание: Для модели базы данных, разработанной в первой самостоятельной работе [1], используя DataBase Desktop, дать описание системы соответствующих таблиц локальной базы данных в формате Paradox7.


Структура таблиц:


Таблица AVTOR:

  • Код автора (KOD)-ключевое, автоинкрементное поле;

  • Фамилия, имя, отчество (FIO)-строка до 50 символов, обязательного заполнения;

  • Год рождения (ROZD) – строка до 4 символов с маской “####”


Таблица CIKL:

  • Код цикла (KOD)-ключевое, автоинкрементное поле;

  • Название цикла (NAZV)- строка до 120 символов, обязательного заполнения;


Таблица DISCIP:

  • Код дисциплины (KOD)-ключевое, автоинкрементное поле;

  • Название дисциплины(NAZV)- строка до 120 символов, обязательного заполнения;

  • Код цикла (KCIKL) - содержит ссылку на таблицу подстановки CIKL, по полю KOD, типа Long Integer (установлена ссылочная целостность);


Таблица GRUP:

  • Код группы (KOD)-ключевое, автоинкрементное поле;

  • Код специальности (KSP) - содержит ссылку на таблицу подстановки SPEC, по полю KOD, типа Long Integer (установлена ссылочная целостность);

  • Название потока (POTOK) - строка до 20 символов, обязательного заполнения;

  • Год поступления (GOD) - строка до 4 символов с маской “####”, обязательного заполнения.


Таблица KNIGI:

  • Код книги (KOD)-ключевое, автоинкрементное поле;

  • Название книги (NAZV)- строка до 120 символов, обязательного заполнения;

  • Количество книг (KOLICH) – короткое целое типа SHORT;

  • Год издания (GOD) - строка до 4 символов с маской “####”, обязательного заполнения.


Таблица Recomend:

  • Код рекомендации (KOD)-ключевое, автоинкрементное поле;

  • На какой семестр рекомендация (SEMESTR) - короткое целое типа SHORT, обязательного заполнения;

  • Код книги (KKNIG) - содержит ссылку на таблицу подстановки KNIGI, по полю KOD, типа Long Integer (установлена ссылочная целостность);

  • Код специальности (KSPEC) - содержит ссылку на таблицу подстановки SPEC, по полю KOD, типа Long Integer (установлена ссылочная целостность);

  • Код дисциплины (KDISC) - содержит ссылку на таблицу подстановки DISCIP, по полю KOD, типа Long Integer (установлена ссылочная целостность);


Таблица SOOTV:

  • Код соответствия (KOD)-ключевое, автоинкрементное поле;

  • Код книги (KKNIG) - содержит ссылку на таблицу подстановки KNIGI, по полю KOD, типа Long Integer (установлена ссылочная целостность);

  • Код автора (KAVT) - содержит ссылку на таблицу подстановки AVTOR, по полю KOD, типа Long Integer (установлена ссылочная целостность);


Таблица SPEC:

  • Код специальности (KOD)-ключевое, автоинкрементное поле;

  • Название специальности (NAZV) - строка до 120 символов, обязательного заполнения;

  • Номер специальности (NOM) - строка до 10 символов, обязательного заполнения;


Министерство Образования Российской Федерации
Хабаровский Государственный Технический Университет

Кафедра: “Программного обеспечения ВТ и АС”



Лабораторная работа №2


Тема: “ Проектирование системы экранных

форм для ведения локальной базы данных ”


Выполнил:

студент группы ПО-02

Самойленко П.Р.

Проверил:

к.т.н., доцент

Саринков А.А.


Хабаровск 2002



Таблицы, используемы в экранных формах

Создадим систему экранных форм для работы со сложной связью между таблицами «Книги» и «Авторы». Данные таблицы связываются между собой с помощью третьей таблицы – «Соответствие». Таким образом, один автор может быть привязан к нескольким книгам, в написании которых он принимал участие. Связь между таблицами можно посмотреть на схеме данных.


Связь книга->автор

Вид формы на этапе проектирования:


Вид формы работающего приложения:


Содержимое левой таблицы меняется при изменения указателя в правой таблице. За это отвечает процедура:

procedure TSvaz.Table1AfterScroll(DataSet: TDataSet);

begin

query1.Close;

query1.Params[0].Value:=table1.FieldByName('KOD').AsInteger;

query1.Open;

end;

Например при переходе на следующую запись мы меняем значение параметра “par” у компонента Query1 на значение поля “KOD” текущей записи компонента table1.

Сам текст запроса Query1:

select *

from AVTOR

where kod in(

select kavt

from SOOTV

where kknig=:par )


Для навигации по названиям книг можно пользоваться компонентом «DBNavigator», который привязан к тому же набору что и DBGrid1(левая таблица). Для добавления и удаления автора надо пользоваться кнопками «Добавить» и «Удалить».

Процедура нажатия на кнопку «удалить»:

procedure TSvaz.BitBtn1Click(Sender: TObject);

begin

table2.FindKey([table1.fieldbyname('KOD').asinteger,query1.fieldbyname('KOD').asinteger]);

table2.Delete; // переход, удаление и обновление

Table1.AfterScroll(table1);

end;

Процедура нажатия на кнопку «добавить»:

procedure TSvaz.BitBtn3Click(Sender: TObject);

begin

table2.Append; // добавление записи в таблицу «Соответствие»

table2.FieldByName('KKNIG').Asinteger:=table1.fieldbyname('KOD').AsInteger; // в поле

//“KKNIG” поместить значение кода текущей книги

ShowWindow(Vibor_Avt.Handle, SW_SHOW); // показать форму выбора автора

Vibor_Avt.Show;

svaz.Enabled:=false; // заблокировать форму

end;

После выхода из формы выбора автора управление передается процедуре:

procedure TSvaz.vstavka;

begin

ifnot (TableProv.FindKey([table2.fieldbyname('KKnig').asinteger, table2.fieldbyname('KAvt'). asinteger])) thenbegin // поиск такой же записи как хотим ввести в уже введенных

try

Table2.post; // сохранение

table2.Close; // обновление

table2.Open;

except

messagedlg('Данный автор присутствует в списке',mtinformation,[mbok],0); // сюда никогда

//не перейдет

end;

end

elsebegin

table2.Cancel;

messagedlg('Данный автор присутствует в списке',mtinformation,[mbok],0);

end;

end;

Из-за ошибки в Delphi пришлось вставлять еще два компонента TableProv и DataProv – для того, чтоб сначала искать такую же запись в таблице соответствия, какую хотим ввести, и не задействовать уникальный индекс, построенный по полям Kknig и Kavt. Так как программа потом перестает работать. Вот вырезка из конференции:

Николаев Констанитн   (04.12.01 20:54)

Уважаемые специалисты!
Что значит ошибка "Index is out of date"?
С уважением,
Константин.

Ю.Ю.   (05.12.01 02:48)

Ошибка в индексном файле. Нужно удалить и создать заново.

kaif ©   (05.12.01 22:13)

Эта ошибка существует в D3,D4,D5. В D6 не проверял, но уверен и там она есть. Я пробовал писать даже на Borland Second Team по этому поводу, но никто меня слушать даже не захотел - отсылали на форумы. Хотя это чудовищный баг, по моему мнению. Ошибка генерится по следующему алгоритму:
1. Вставляете запись в таблицу Paradox, с нарушением уникального индекса. Неважно, первичного или вторичного. Возникает Key violation.
2. Делаете невинный SQL-запрос против этой таблицы. Любой, например,
SELECT * FROM
3. Вставляете еще раз запись с нарушением уникального индекса. сообщение Key violation больше не появляется.
После переоткрытия таблицы будете гарантированно иметь "Index is out of date."
Кто не верит, могу выслать исходный код демонстрационной программы .
Из за этого мне пришлось выбирать между Paradox и Local SQL. Выбор был трудный. И я выбрал InterBase.
Главная подлость этой ошибки в том, что программист не пытается обычно создать более 1 key violation подряд. Этим обычно занимается пользователь. Поэтому ошибка плохо уловима и иногда вылезает через пару месяцев работы базы.

С описанной ошибкой столкнулся и я.


Форма выбора автора

В роли списка выступает компонент DBLookupListBox, который берет код из таблицы авторов и вставляет его в таблицу соответствия. При закрытии формы срабатывает процедура TSvaz.vstavka:

procedure TVibor_Avt.FormClose(Sender: TObject; var Action: TCloseAction);

begin

ShowWindow(Vibor_Avt.Handle, SW_HIDE); // скрыть форму, но не закрывать

action:=canone;

svaz.Enabled:=true;

if ((svaz.Table2.State=dsInsert) or (svaz.Table2.State=dsedit)) then svaz.vstavka;

// если мы добавляем нового автора, то перейти к vstavka

svaz.Table1.AfterScroll(svaz.table1);

end;

При нажатии на кнопку «Добавить» открывается форма редактирования списка авторов.


Форма выбора автора

Эта форма появляется на экране либо при нажатии на кнопке «Авторы» в меню главной формы, либо при нажатии на кнопке «Добавить» в форме, описанной выше.


Форма отображения всех таблиц


В этой форме заголовки столбцов в таблицах показываются «как есть», в отличие от всех предыдущих форм, где заголовок задавался на этапе проектирования – для удобства и наглядности. DBGrid’ы связаны с наборами данных, расположенными на поверхности формы DM, которая имеет тип DataModule.


Форма DM.

Вид формы на этапе проектирования:


Формы такого типа не имеют визуальных свойств и являются контейнером для не визуальных компонентов.


Министерство Образования Российской Федерации
Хабаровский Государственный Технический Университет

Кафедра: “Программного обеспечения ВТ и АС”



Лабораторная работа №3


Тема: “ Проектирование экранной формы электронного

аналога исходного документа ”


Выполнил:

студент группы ПО-02

Самойленко П.Р.

Проверил:

к.т.н., доцент

Саринков А.А.


Хабаровск 2002



Вид формы ввода

Для соединения всех основных таблиц воедино используется таблица SVOD. Для установления связи между таблицами используем компоненты TTable и Tquery. А точнее – их свойства MasterSource.

Вид формы работающего приложения:


В первых трех таблицах выбирается предмет и специальность, для которых надо вывести рекомендуемую литературу. Таблица «Предмет» связана с таблицей цикл «Цикл» связью многие к одному.

При смене положения указателя в первых трех таблицах запускается процедура zapr – для обновления данных в таблицах «Книги» и «Авторы книг» через компоненты Query.

Процедура zapr.

procedure tsvaz.zapr;

var

i:integer;

begin

cislo:=0;

with querysvod dobegin

Close;

parambyname('spec').Value:=table4.fieldbyname('KOD').AsInteger;

parambyname('dis').Value:=table5.fieldbyname('KOD').AsInteger;

Open;

AfterScroll(QuerySvod);

first;

for i:=1 to recordcount dobegin

cislo:=cislo+querySvod.fieldbyname('KOLICH').value;

label7.Caption:=floattostr(cislo);

next;

end;

end;

end;


Данная функция задает значения параметрам компонента querysvod, который связан с таблицей «Книги».

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

Также в теле данной процедуры вызывается процедура AfterScroll(QuerySvod):

procedure TSvaz.QuerySvodAfterScroll(DataSet: TDataSet);

begin

query1.Close;

query1.Params[0].Value:=querySvod.FieldByName('KOD').AsInteger;

query1.Open;

end;

Тут задается значение параметру компонента query1 – для обновления записей в таблице «Список авторов».

SQL запросы.

Текст запроса компонента querySvod:

select * from knigi

where kod in(

select KKnig from recomend

where kdisc=:dis and kspec=:spec

)

order by NAZV

выбирает из таблицы knigi.db все поля, где значения kdisc и kspec – берутся из верних таблиц. Результаты запроса отображаются в таблице «Книги».

Текст запроса компонента Query1:

select *

from AVTOR

where kod in(

select kavt

from SOOTV

where kknig=:par )

order by FIO

через таблицу SOOTV идет связь книг с авторами и авторы данной книги отображаются в книге «Список авторов».


Таким образом в данной форме отображаются все данные, которые были в печатном документе.

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита02:04:21 02 ноября 2021
.
.02:04:17 02 ноября 2021
.
.02:04:13 02 ноября 2021
.
.02:04:05 02 ноября 2021
.
.02:03:55 02 ноября 2021

Смотреть все комментарии (22)
Работы, похожие на Реферат: Лабораторные работы (в ХГТУ)

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(288308)
Комментарии (4159)
Copyright © 2005-2021 HEKIMA.RU [email protected] реклама на сайте