База даних автоматизованої системи дошкільного навчального закладу

Побудування інформаційної концептуальної моделі дошкільного навчального закладу. Визначення ідентифікуючого набора атрибутів інформаційної системи. Відомості про структуру програми, мова програмування. Код створення бази даних на мові Transact-SQL.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 27.03.2016
Размер файла 433,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

from

(

select sotrudniki.idSotrudnika, MAX(medosmotr.dataMedosmotra) dataPoslednegoOsmotra

from

sotrudniki

join medosmotr on sotrudniki.idSotrudnika=medosmotr.idSotrudnika

group by sotrudniki.idSotrudnika

)as posledniyOsmotr

join sotrudniki on posledniyOsmotr.idSotrudnika=sotrudniki.idSotrudnika

join medosmotr on posledniyOsmotr.idSotrudnika=medosmotr.idSotrudnika and posledniyOsmotr.dataPoslednegoOsmotra=medosmotr.dataMedosmotra

join typOsmotra on medosmotr.idTypaOsmotra=typOsmotra.idTypaOsmotra

join zakluchenieOsmotra on medosmotr.idZaklucheniaOsmotra=zakluchenieOsmotra.idZaklucheniaOsmotra

where

dateadd (month, typOsmotra.period, medosmotr.dataMedosmotra)<GETDATE()

or zakluchenieOsmotra.idZaklucheniaOsmotra<>1-------!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

go

--execute pr_5_1 1

if object_id ('pr_5_2') is not null

drop procedure pr_5_2

go

create proc pr_5_2

--@idZakl int

as

select sotrudniki.idSotrudnika, sotrudniki.familyaSotrudnika, sotrudniki.imyaSotrudnika,

medosmotr.dataMedosmotra, typOsmotra.nazvanieTypaOsmotra, zakluchenieOsmotra.zakluchenie, dateadd (month, typOsmotra.period, medosmotr.dataMedosmotra) as sleduyuchiyOsmotr

from

(

select sotrudniki.idSotrudnika, MAX(medosmotr.dataMedosmotra) dataPoslednegoOsmotra

from

sotrudniki

join medosmotr on sotrudniki.idSotrudnika=medosmotr.idSotrudnika

group by sotrudniki.idSotrudnika

)as posledniyOsmotr

join sotrudniki on posledniyOsmotr.idSotrudnika=sotrudniki.idSotrudnika

join medosmotr on posledniyOsmotr.idSotrudnika=medosmotr.idSotrudnika and posledniyOsmotr.dataPoslednegoOsmotra=medosmotr.dataMedosmotra

join typOsmotra on medosmotr.idTypaOsmotra=typOsmotra.idTypaOsmotra

join zakluchenieOsmotra on medosmotr.idZaklucheniaOsmotra=zakluchenieOsmotra.idZaklucheniaOsmotra

go

--execute pr_5_1 1

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--6.Медична картка вказанної дитини з для прегляду біометричних даних через певні проміжки часу;

if object_id ('pr_6_1') is not null

drop procedure pr_6_1

go

create proc pr_6_1

@idRebenka int

as

select medkartochka.idMedkartohki, medkartochka.dataMedkartochki, medkartochka.idGruppaZdorovya, medkartochka.rost, medkartochka.ves, sotrudniki.idSotrudnika, sotrudniki.familyaSotrudnika, sotrudniki.imyaSotrudnika

from

deti

left join medkartochka on deti.idRebenka=medkartochka.idRebenka

left join sotrudniki on medkartochka.idSotrudnika=sotrudniki.idSotrudnika

where deti.idRebenka=@idRebenka

go

--execute pr_6_1 5

--------------------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------------------

--7.Відомості про щеплення, які були зроблені певній дитині;

if object_id ('pr_7_1') is not null

drop procedure pr_7_1

go

create proc pr_7_1

@idRebenka int

as

select deti.idRebenka, deti.familyaRebenka, deti.imyaRebenka, deti.dataRogdenya, ISNULL(privivki.nazvaniePrivivki, '-') nazvaniePrivivki, ISNULL(convert(varchar(max),privivki.vozrastDlyaPrivivki),'-') vozrastDlyaPrivivki,

ISNULL (convert (varchar(max), zhurnalPrivivki.dataPrivivki), '-') dataPrivivki,

(case when zhurnalPrivivki.sdelanaPrivivka=1 THEN 'да' ELSE case when zhurnalPrivivki.sdelanaPrivivka IS NULL THEN '-' ELSE 'нет' END END) sdelanaPrivivka, ISNULL (prichinaNePrivivki.prichina, '-') prichina

from

deti

left join zhurnalPrivivki on deti.idRebenka=zhurnalPrivivki.idRebenka

left join privivki on zhurnalPrivivki.idPrivivki=privivki.idPrivivki

left join prichinaNePrivivki on zhurnalPrivivki.idPrichinaNePrivivki=prichinaNePrivivki.idPrichinaNePrivivki

where deti.idRebenka=@idRebenka

go

--execute pr_7_1 5

--execute pr_7_1 6

--execute pr_7_1 1

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

--8.Списки та загальні кількість дітей, яким мають бути зробленні щеплення у найближчий час;

if object_id ('pr_8_1') is not null

drop procedure pr_8_1

go

create proc pr_8_1

as

select detiVozrast.*, privivki.*, ISNULL(prichinaNePrivivki.prichina, '-') kommentar

from detiVozrast

join privivki on detiVozrast.vozrast>=privivki.vozrastDlyaPrivivki

left join zhurnalPrivivki on detiVozrast.idRebenka=zhurnalPrivivki.idRebenka and privivki.idPrivivki=zhurnalPrivivki.idPrivivki

left join prichinaNePrivivki on zhurnalPrivivki.idPrichinaNePrivivki=prichinaNePrivivki.idPrichinaNePrivivki

where

(zhurnalPrivivki.sdelanaPrivivka=0 OR zhurnalPrivivki.sdelanaPrivivka IS NULL)

order by detiVozrast.idRebenka

go

--exec pr_8_1

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------------------------------------------------

-- 9.Список та загальна кількість дітей, яким не були зробленні вчасно щеплення (з вказанням причини).

if object_id ('pr_9_1') is not null

drop procedure pr_9_1

go

create proc pr_9_1

as

select deti.idRebenka, deti.familyaRebenka, deti.imyaRebenka, deti.dataRogdenya, ISNULL(privivki.nazvaniePrivivki, '-') nazvaniePrivivki, ISNULL(convert(varchar(max),privivki.vozrastDlyaPrivivki),'-'),

ISNULL (convert (varchar(max), zhurnalPrivivki.dataPrivivki), '-') dataPrivivki,

(case when zhurnalPrivivki.sdelanaPrivivka=1 THEN 'да' ELSE case when zhurnalPrivivki.sdelanaPrivivka IS NULL THEN '-' ELSE 'нет' END END) sdelanaPrivivka, ISNULL (prichinaNePrivivki.prichina, '-') prichina

from

deti

left join zhurnalPrivivki on deti.idRebenka=zhurnalPrivivki.idRebenka

left join privivki on zhurnalPrivivki.idPrivivki=privivki.idPrivivki

left join prichinaNePrivivki on zhurnalPrivivki.idPrichinaNePrivivki=prichinaNePrivivki.idPrichinaNePrivivki

where zhurnalPrivivki.sdelanaPrivivka=0

go

--exec pr_9_1

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

--10.Повний переляк занять, які відвідувала вказана дитина в певний проміжок часу

if object_id ('pr_10_1') is not null

drop procedure pr_10_1

go

create proc pr_10_1

@idRebenka int

@beginData date,

@endData date

as

select*

from

zurnalZanyatia

join deti on zurnalZanyatia.idRebenka=deti.idRebenka

join zanyatie on zurnalZanyatia.idZanyatie=zanyatie.idZanyatie

join nazvanieZanyatia on zanyatie.idNazvanieZanyatia=nazvanieZanyatia.idNazvanieZanyatia

@beginData date,

@endData date

as

select * from

zanyatie

join zanyatieGruppa on zanyatie.idZanyatie=zanyatieGruppa.idZanyatie

join gruppa on zanyatieGruppa.idGruppy=gruppa.idGruppy

join rebenokGruppa on gruppa.idGruppy=rebenokGruppa.idGruppy

join deti on rebenokGruppa.idRebenka=deti.idRebenka

join zanyatieSotrudnik on zanyatieSotrudnik.idZanyatie=zanyatie.idZanyatie

join sotrudniki on zanyatieSotrudnik.idSotrudnika=sotrudniki.idSotrudnika

where deti.idRebenka=@idRebenka

and

zanyatie.dataZanyatia between @beginData and @endData

use master

use kinderGart

go

if object_id ('detiVozrast') is not null

drop view detiVozrast

go

create view detiVozrast

as

select deti.*, DATEDIFF (year, deti.dataRogdenya, GETDATE()) vozrast

from deti

go

-------------------------------------------------------------------------------------------------------------------------------------------------------------

if object_id ('actualPost') is not null

drop view actualPost

go

create view actualPost as

select actualAssign.idSotrudnika, sotrudniki.imyaSotrudnika, sotrudniki.familyaSotrudnika, sotrudniki.userName, dolgnosti.idDolgnosti, nazvanieDolgnosty

from

(select idSotrudnika, MAX(dataNaznachenia) assignDate from naznachenieNaDolgnost

where dataUvolnenia is null

group by naznachenieNaDolgnost.idSotrudnika) as actualAssign

join naznachenieNaDolgnost on naznachenieNaDolgnost.idSotrudnika=actualAssign.idSotrudnika and naznachenieNaDolgnost.dataNaznachenia=actualAssign.assignDate

join sotrudniki on actualAssign.idSotrudnika=sotrudniki.idSotrudnika

join dolgnosti on naznachenieNaDolgnost.idDolgnosti=dolgnosti.idDolgnosti

go

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

if object_id ('userRole') is not null

drop proc userRole

go

create proc userRole

as

declare @curUser nvarchar(30)

declare @t table(UserName varchar(25), RoleName nvarchar(50), LoginName nvarchar(50), DefDBName nvarchar(50), DefSchemaName nvarchar(50), UserID smallint, [SID] varbinary(100))

declare @RoleName nvarchar(50)

set @curUser = USER

insert into @t

exec sp_helpuser @curUser

select actualPost.idSotrudnika, actualPost.imyaSotrudnika, actualPost.familyaSotrudnika, actualPost.nazvanieDolgnosty,

t.UserName, t.RoleName

from @t t

left join actualPost on t.UserName=actualPost.userName

go

-------------------------------------------------------------------------------------------------------------------------------------------------------------

if object_id ('actualGruppa') is not null

drop view actualGruppa

go

create view actualGruppa as

select rebenokGruppa.idZapisiRebenokGruppa, rebenokGruppa.idRebenka, rebenokGruppa.idGruppy, gruppa.nazvanieGruppy, obchiyTypGruppy.nazvanieTypaGruppy nazvanieObchTypaGruppy, typGruppy.nazvanieTypaGruppy, rebenokGruppa.dataPostuplenya, rebenokGruppa.dataUhoda

from

rebenokGruppa

join gruppa on rebenokGruppa.idGruppy=gruppa.idGruppy

join obchiyTypGruppy on gruppa.idObchiyTypGruppy=obchiyTypGruppy.idObchiyTypGruppy

join typGruppy on gruppa.idTypGruppy=typGruppy.idTypGruppy

where (rebenokGruppa.dataUhoda is null or rebenokGruppa.dataUhoda>GETDATE()) and rebenokGruppa.dataPostuplenya<=GETDATE();

go

2.4 Опис Windows інтерфейсу

Після запуску виконуваного файлу програма перевіряє налаштування, які зберігаються у файлі “tradeOrg.exe.Config”. Якщо клієнт не може з'єднатися з сервером, то буде виведено повідомлення користувачу про неможливість з'єднання.

Якщо користувач вирішить зробити нове з'єднання то буде виведено вікно для налаштування нового з'єднання (Рисунок 3). Це вікно дозволяє вибрати сервер, та аутентифікацію. Якщо з'єднання буде успішне, то нові налаштування будуть збережені у файлі “PhotoCenter.exe.Config” і при наступному запуску програми користувачу не потрібно буде вводити ці налаштування.

Головне вікно програми зображене на рисунку 4. При запуску клієнта чи зміні налаштувань визначається роль користувача. Наприклад на рисунку 4 зображено інтерфейс доступний адміністратору, а на рисунку 5 інтерфейс користувача, який зайшов під роллю відділу кадрів, і він не має тих можливостей, що має адміністратор.

Рисунок 3.

Інтерфейс програми розділено на 6 вкладок: (Рисунок 4) “Подключение”, ”Продажи” ”Склад”, “Кадри”, ”Платежи”, ”Справочники” , «Администрирование». На приклад, через вкладку “Продажи” відбувається робота з заказами, тобто додавання заказу, його редагування та видалення.

Рисунок 4.

Розглянемо на приклад додавання нової дитини. Це відбувається натисканням кнопки «Добавить ребенка», після чого виводиться вікно (Рисунок 9) в якому треба ввести дані дитини.

Рисунок 5.

Якщо потрібне буде зачислити дитину в групу потрібно натиснути кнопку «Зачислити», після чого з'явиться вікно (Рисунок 6), де потрібно групу.

Рисунок 6.

Література

1. Microsoft SQL Server 2005. Библия пользователя: Пер. с англ. - М.: ООО «И.Д.Вильямс»,2008.

2. Дж. Грофф, П. Вайнберг SQL: Полное руководство: Пер. с англ. - 2-е изд., перераб. И доп. - К.: Издательская группа BHV, 2001.

3. Б. Гамильтон ADO.NET Сборник рецептов. Для профессионалов. - СПб.: Питер, 2005.

4. Сеппа Д. Программирование на Microsoft ADO.NET 2.0 Мастер-класс. / Пер. с англ. - М.: Издательство «Русская редакция»,2005.

Размещено на Allbest.ru


Подобные документы

  • Виявлення основних сутностей предметної області. Побудова схеми реляційної бази даних. Вбудовані процедури і тригери. Опис архітектури програмної системи і концептуальної моделі бази даних, програмної реалізації та інтерфейсу користувача додатку.

    курсовая работа [4,3 M], добавлен 05.12.2012

  • Створення інформаційної системи для спортивного магазину харчування. Обґрунтування вибору мови програмування. Текстуальний опис алгоритму. Проектування бази даних. Комп'ютеризація торгівельних закладів, отримання необхідних даних в автоматичному режимі.

    дипломная работа [1,3 M], добавлен 12.05.2015

  • Оцінка необхідності створення на сучасному підприємстві автоматизованої інформаційної системи та її значення в процесі управління. Етапи розробки структури бази даних, зміст, призначення. Операційна інформація з обліку фінансово-розрахункових операцій.

    контрольная работа [29,4 K], добавлен 06.10.2010

  • Проектування бази даних предметної області "Магазин будівельних матеріалів". Аналіз сукупності вхідних і вихідних даних, шляхи удосконалення інформаційної системи обліку товару. Організація інформаційної бази, розробка логічної і фізичної моделі.

    курсовая работа [559,2 K], добавлен 09.05.2016

  • Створення гнучкої клієнт-серверної системи інформаційної підтримки підвищення кваліфікації персоналу ДП № 9 з застосуванням мови програмування PHP, системи керування базами даних MySQL. Розробка алгоритмів, програмна реалізація основних процедур системи.

    дипломная работа [1,8 M], добавлен 26.10.2012

  • Роль бази даних, призначеної для каталогізації рейсів, рухомого складу, персоналу та пасажирів, в полегшенні роботи залізничного вокзалу. Проектування структури даних. Розробка запитів для рішення задач, комплексної програми. Опис математичної моделі.

    курсовая работа [4,8 M], добавлен 27.12.2013

  • Побудова інформаційної системи "Магазин товарів для настільного тенісу" з автоматизації роботи магазину. Концептуальне моделювання бази даних. Обґрунтування вибору СУБД. Логічне проектування бази даних. Схема бази даних. Створення таблиць в конструкторі.

    курсовая работа [8,8 M], добавлен 16.12.2015

  • Проектування бази даних: визначення об’єктів, структура таблиць, побудова схеми даних, забезпечення цілісності даних, створення певних відношень між таблицями, створення запитів, побудова форм, оформлення об’єктів. Розробка інструкції користувача.

    курсовая работа [1,9 M], добавлен 19.09.2014

  • Розробка інформаційної системи, що містить дані про товари, їх поставку і доставку за допомогою моделі "Сутність-зв'язок". Вибір засобів її реалізації Структурна схема реляційної бази даних та таблиці БД. Інструкція для користувача програмним продуктом.

    курсовая работа [2,4 M], добавлен 19.06.2013

  • Аналіз відомих підходів до проектування баз даних. Моделі "сутність-зв'язок". Ієрархічна, мережева та реляційна моделі представлення даних. Організація обмежень посилальної цілісності. Нормалізація відносин. Властивості колонок таблиць фізичної моделі.

    курсовая работа [417,6 K], добавлен 01.02.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.