Разработка БД для АСУ «Деканат»

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Проектирование баз данных
  • 43 43 страницы
  • 10 + 10 источников
  • Добавлена 17.06.2017
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
СОДЕРЖАНИЕ

Введение 3
1 Системный анализ предметной области 5
1.1 Анализ объекта автоматизации «Деканат» 5
1.2 Обзор информационных технологий 6
1.3 Обзор продуктов-аналогов (2-3 «похожих по ПрО» ИС или БД) 10
1.4 Требования к разрабатываемой базе данных 13
2 Проектирование базы данных 15
2.1 Разработка инфологической модели 15
2.2 Нормализация базы данных. Построение концептуальной модели 18
3 Программная реализация 22
3.1 Анализ и выбор СУБД 22
3.2 Физическое проектирование базы данных в СУБД 23
3.3 Разработка форм 26
3.4 Разработка хранимых процедур 29
Заключение 31
Список источников и литературы 32
Приложения 33
Приложение А. Скрипт создания базы данных 33
Приложенеи Б. Код программы 43





Фрагмент для ознакомления

Гросс, К. Самоучитель C# 2008 / К. Гросс – БХВ-Петербург., 2009. – 576с.Герберт Шилдт. C# 4.0. Полное руководство. ISBN 978 5 8459 1684 6. Вильямс. 2010.Гвоздева Т.В., Баллод Б.А. Проектирование информационных систем. - М.: Феникс, 2009. - 512 с.ЛарманКрэг UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку. 2013г.ПриложенияПриложение А. Скрипт создания базы данных---- СкриптсгенерированDevartdbForge Studio for Oracle, Версия 3.10.12.0-- Домашняя страница продукта: http://www.devart.com/ru/dbforge/oracle/studio-- Датаскрипта: 16.05.2017 14:14:03-- Версиясервера: Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production-- Версия клиента:--  CONNECTdecanat/decanat@localhost:1521/XE;  ---- Установкасхемыпоумолчанию--ALTERSESSION SETCURRENT_SCHEMA = "DECANAT"; SETSQLBLANKLINES ON;SETDEFINE OFF;ALTERSESSION SETNLS_DATE_FORMAT = 'MM/DD/SYYYY HH24:MI:SS';ALTERSESSION SETNLS_TIMESTAMP_TZ_FORMAT = 'MM/DD/SYYYY HH24:MI:SS.FF TZH:TZM';ALTERSESSION SETNLS_TIMESTAMP_FORMAT = 'MM/DD/SYYYY HH24:MI:SS.FF';ALTERSESSION SETNLS_NUMERIC_CHARACTERS = '.,';ALTERSESSION SETNLS_NCHAR_CONV_EXCP = FALSE;ALTERSESSION SETTIME_ZONE = '+03:00'; ---- Описание для последовательности GRUPPY_SEQ--CREATESEQUENCEGRUPPY_SEQSTART WITH41INCREMENT BY1; ---- Описание для последовательности PREDMET_SEQ--CREATESEQUENCEPREDMET_SEQSTART WITH21INCREMENT BY1; ---- Описание для последовательности PREP_SEQ--CREATESEQUENCEPREP_SEQSTART WITH21INCREMENT BY1; ---- Описание для таблицы GRUPPY--CREATETABLEGRUPPY (  ID_GR  NUMBER,  GRNAME VARCHAR2(30 BYTE) NOTNULL,  GRKURS NUMBER            NOTNULL,  CONSTRAINTGRUPPY_PK PRIMARYKEY(ID_GR) USING INDEXTABLESPACE USERS STORAGE (INITIAL 64 K                                                                                 NEXT1 M                                                                                 MAXEXTENTS UNLIMITED))TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; ---- Описаниедлятаблицы PREDMET--CREATETABLEPREDMET (  ID_PR  NUMBER NOTNULL,  PRNAME VARCHAR2(30 BYTE),  CONSTRAINTPREDMET_PK PRIMARYKEY(ID_PR) USING INDEXTABLESPACE USERS STORAGE (INITIAL 64 K                                                                                  NEXT1 M                                                                                  MAXEXTENTS UNLIMITED))TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; ---- Описаниедлятаблицы PREP--CREATETABLEPREP (  ID_PP    NUMBER            NOTNULL,  PPNAME   VARCHAR2(30 BYTE) NOTNULL,  PPSTEPEN VARCHAR2(30 BYTE),  CONSTRAINTPREP_PK PRIMARYKEY(ID_PP) USING INDEXTABLESPACE USERS STORAGE (INITIAL 64 K                                                                               NEXT1 M                                                                               MAXEXTENTS UNLIMITED))TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; ---- Описаниедлятаблицы STUDENTY--CREATETABLESTUDENTY (  STNO     NUMBER            NOTNULL,  STFIO    VARCHAR2(30 BYTE) NOTNULL,  STDBIRTH DATE              NOTNULL,  STYEAR   NUMBER(4, 0)      NOTNULL,  ID_GR    NUMBER            NOTNULL,  CONSTRAINTSTUDENTY_PK PRIMARYKEY(STNO) USING INDEXTABLESPACE USERS STORAGE (INITIAL 64 K                                                                                  NEXT1 M                                                                                  MAXEXTENTS UNLIMITED),  CONSTRAINTFK_STUDENTY_GRUPPY_ID_GR FOREIGNKEY(ID_GR)  REFERENCESGRUPPY (ID_GR))TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; ---- Описание для таблицы EXAM--CREATETABLEEXAM (  SEMESTR  NUMBER NOTNULL,  ID_PR    NUMBER NOTNULL,  ID_PP    NUMBER NOTNULL,  STNO     NUMBER NOTNULL,  EXOCENKA NUMBER NOTNULL,  CONSTRAINTFK_EXAM_PREDMET_ID_PR FOREIGNKEY(ID_PR)  REFERENCESPREDMET (ID_PR),  CONSTRAINTFK_EXAM_PREP_ID_PP FOREIGNKEY(ID_PP)  REFERENCESPREP (ID_PP),  CONSTRAINTFK_EXAM_STUDENTY_STNO FOREIGNKEY(STNO)  REFERENCESSTUDENTY (STNO))TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; CREATEUNIQUEINDEXEXAM_PK ONEXAM (ID_PR, ID_PP, SEMESTR)TABLESPACE USERSSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; CREATEUNIQUEINDEXPK_EXAM ONEXAM (ID_PP, ID_PR, SEMESTR)TABLESPACE SYSTEMSTORAGE (INITIAL 64 K         NEXT1 M         MAXEXTENTS UNLIMITED)LOGGING; ---- Описаниедляпроцедуры EXAMDEL--CREATEORREPLACEPROCEDUREEXAMDEL(SEM  INNUMBER,                                    IDPR INNUMBER,                                    IDPP INNUMBER,                                    STN  INNUMBER)  AS  BEGIN    DELETEFROMEXAM      WHERESEMESTR = SEM        ANDID_PR = IDPR        ANDID_PP = IDPP        ANDSTNO = STN;     NULL;  ENDEXAMDEL;/ ---- Описание для процедуры EXAMIN--CREATEORREPLACEPROCEDUREEXAMIN(SEM    INNUMBER,                                   IDPR   INNUMBER,                                   IDPP   INNUMBER,                                   STN    INNUMBER,                                   EXOCEN INNUMBER)  AS  BEGIN    INSERTINTOEXAM (      SEMESTR, ID_PR, ID_PP, STNO, EXOCENKA    )    VALUES(SEM, IDPR, IDPP, STN, EXOCEN);    NULL;  ENDEXAMIN;/ ---- Описаниедляпроцедуры GET_STUD--CREATEORREPLACEPROCEDUREGET_STUD(IDGR  IN  NUMBER,                                     SSTUD OUTSYS_REFCURSOR)  AS  BEGIN     OPENSSTUD FOR    SELECTSTUDENTY.STNO,           STUDENTY.STFIO,           STUDENTY.STDBIRTH,           STUDENTY.STYEAR,           STUDENTY.ID_GR,           GRUPPY.GRNAME,           GRUPPY.GRKURS      FROMSTUDENTY        LEFTJOINGRUPPY          ONSTUDENTY.ID_GR = GRUPPY.ID_GR      WHERESTUDENTY.ID_GR = IDGR;   END;/ ---- Описание для процедуры GETEXAM--CREATEORREPLACEPROCEDUREgetExam(SEM  IN  NUMBER,                                    IDGR IN  NUMBER,                                    STUD OUTSYS_REFCURSOR)  AS  BEGIN    OPENSTUD FOR    SELECTEXAM.SEMESTR,           EXAM.ID_PR,           PREDMET.PRNAME,           EXAM.ID_PP,           PREP.PPNAME,           EXAM.STNO,           STUDENTY.STFIO,           EXAM.EXOCENKA      FROMEXAM        LEFTOUTERJOINSTUDENTY          ONEXAM.STNO = STUDENTY.STNO        LEFTOUTERJOINPREP          ONEXAM.ID_PP = PREP.ID_PP        LEFTOUTERJOINPREDMET          ONEXAM.ID_PR = PREDMET.ID_PR      WHERESTUDENTY.ID_GR = IDGR        ANDEXAM.SEMESTR = SEM;  END;/ ---- Описание для процедуры GRUPDEL--CREATEORREPLACEPROCEDUREGRUPDEL(IGR INNUMBER)  AS  BEGIN    DELETEFROMGRUPPY      WHEREid_gr = IGR;    NULL;  ENDGRUPDEL;/ ---- Описание для процедуры GRUPIN--CREATEORREPLACEPROCEDUREGRUPIN(GRN INVARCHAR2,                                   GRK INNUMBER)  AS  BEGIN    INSERTINTOGRUPPY (      GRNAME, GRKURS    )    VALUES(GRN, GRK);  ENDGRUPIN;/ ---- Описание для процедуры PREDMETDEL--CREATEORREPLACEPROCEDUREPREDMETDEL(IDPR INNUMBER)  AS  BEGIN    DELETEFROMPREDMET      WHEREID_PR = IDPR;     NULL;  ENDPREDMETDEL;/ ---- Описаниедляпроцедуры PREDMETIN--CREATEORREPLACEPROCEDUREPREDMETIN(PRN INVARCHAR2)  AS  BEGIN    INSERTINTOPREDMET (      PRNAME    )    VALUES(PRN);     NULL;  ENDPREDMETIN;/ ---- Описаниедляпроцедуры PREPDEL--CREATEORREPLACEPROCEDUREPREPDEL(IDPP INNUMBER)  AS  BEGIN    DELETEPREP      WHEREID_PP = IDPP;     NULL;  ENDPREPDEL;/ ---- Описание для процедуры PREPIN--CREATEORREPLACEPROCEDUREPREPIN(PPN INVARCHAR2,                                   PPS INVARCHAR2)  AS  BEGIN    INSERTINTOPREP (      PPNAME, PPSTEPEN    )    VALUES(PPN, PPS);     NULL;  ENDPREPIN;/ ---- Описаниедляпроцедуры STUDENTDEL--CREATEORREPLACEPROCEDURESTUDENTDEL(STN INNUMBER)  AS  BEGIN    DELETESTUDENTY      WHERESTNO = STN;    NULL;  ENDSTUDENTDEL;/ ---- Описаниедляпроцедуры STUDENTIN--CREATEORREPLACEPROCEDURESTUDENTIN(STN     INNUMBER,                                      SFIO    INVARCHAR2,                                      SDBIRTH INDATE,                                      SYEAR   INNUMBER,                                      IDG     INNUMBER)  AS  BEGIN    INSERTINTOSTUDENTY (      STNO, STFIO, STDBIRTH, STYEAR, ID_GR    )    VALUES(STN, SFIO, SDBIRTH, SYEAR, IDG);    NULL;  ENDSTUDENTIN;/ ---- Выводданныхдлятаблицы GRUPPY--INSERTINTOGRUPPY VALUES(21, 'ПА-14', 1);INSERTINTOGRUPPY VALUES(22, 'ПМ-12', 3);INSERTINTOGRUPPY VALUES(23, 'ПН-14', 1); ---- Вывод данных для таблицы PREDMET--INSERTINTOPREDMET VALUES(1, 'Физика');INSERTINTOPREDMET VALUES(2, 'Химия');INSERTINTOPREDMET VALUES(3, 'Ин. язык'); ---- Вывод данных для таблицы PREP--INSERTINTOPREP VALUES(1, 'ЛебедькоЕ.И.', 'КндитатТН');INSERTINTOPREP VALUES(2, 'ФедосееваЕ.И.', 'доцент');INSERTINTOPREP VALUES(3, 'КочубейК.П.', 'докторТН'); ---- Вывод данных для таблицы STUDENTY--INSERTINTOSTUDENTY VALUES(1511, 'ЕремееваУ.П.', '06/05/1998 00:00:00', 2000, 22);INSERTINTOSTUDENTY VALUES(1845, 'КовальТ.С.', '12/16/1999 00:00:00', 2000, 22);INSERTINTOSTUDENTY VALUES(1965, 'СтаценкоР.Л.', '05/15/1997 00:00:00', 2016, 23); ---- Вывод данных для таблицы EXAM--INSERTINTOEXAM VALUES(1, 1, 1, 1511, 3);INSERTINTOEXAM VALUES(1, 1, 2, 1845, 4);INSERTINTOEXAM VALUES(1, 2, 3, 1965, 4); ---- Описаниедлятриггера GRUPPY_TRG--CREATEORREPLACETRIGGERGRUPPY_TRG  BEFORE INSERT  ONGRUPPY  FOREACH ROWBEGIN << COLUMN_SEQUENCES >>  BEGIN    IF INSERTING      AND:NEW.ID_GR ISNULL    THEN      SELECTGRUPPY_SEQ.NEXTVAL        INTO:NEW.ID_GR        FROMSYS.DUAL;    ENDIF;  ENDCOLUMN_SEQUENCES; END;/ ---- ОписаниедлятриггераPREDMET_TRG--CREATEORREPLACETRIGGERPREDMET_TRG  BEFORE INSERT  ONPREDMET  FOREACH ROWBEGIN << COLUMN_SEQUENCES >>  BEGIN    IF INSERTING      AND:NEW.ID_PR ISNULL    THEN      SELECTPREDMET_SEQ.NEXTVAL        INTO:NEW.ID_PR        FROMSYS.DUAL;    ENDIF;  ENDCOLUMN_SEQUENCES; END;/ ---- ОписаниедлятриггераPREP_TRG--CREATEORREPLACETRIGGERPREP_TRG  BEFORE INSERT  ONPREP  FOREACH ROWBEGIN << COLUMN_SEQUENCES >>  BEGIN    IF INSERTING      AND:NEW.ID_PP ISNULL    THEN      SELECTPREP_SEQ.NEXTVAL        INTO:NEW.ID_PP        FROMSYS.DUAL;    ENDIF;  ENDCOLUMN_SEQUENCES; END;/ COMMIT; ---- Установка схемы по умолчанию--DECLARE  p VARCHAR2(255);BEGIN  SELECTUSERINTOp FROMDUAL;  EXECUTEIMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA = '|| p;END;/Приложенеи Б. Код программыusingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;namespacedecan{publicpartialclassfMain : Form {publicfMain() {InitializeComponent(); }privatevoidвыходToolStripMenuItem_Click(object sender, EventArgs e) {Application.Exit(); }privatevoidстудентыToolStripMenuItem_Click(object sender, EventArgs e) {fStudentsfST = newfStudents();fST.MdiParent = this;fST.Show(); }privatevoidпреподавателиToolStripMenuItem_Click(object sender, EventArgs e){fPrepodfPRP = newfPrepod();fPRP.MdiParent = this;fPRP.Show(); }privatevoidпредметыToolStripMenuItem_Click(object sender, EventArgs e) {fPredmetfPredm = newfPredmet();fPredm.MdiParent = this;fPredm.Show(); }privatevoidгруппыToolStripMenuItem_Click(object sender, EventArgs e) {fGrupsfGru = newfGrups();fGru.MdiParent = this;fGru.Show(); }privatevoidведениеВедомостиToolStripMenuItem_Click(object sender, EventArgs e) {fExamenfExam = newfExamen();fExam.MdiParent = this;fExam.Show(); } }}using System;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingOracle.ManagedDataAccess.Client;namespacedecan{publicpartialclassfPredmetAdd : Form{publicfPredmetAdd() {InitializeComponent(); }privatevoid button1_Click(object sender, EventArgs e) {using (OracleConnection con = newOracleConnection(Properties.Settings.Default.decanatConnectionString)) {using (OracleCommandcmd = newOracleCommand("PREDMETIN", con)) {cmd.CommandType = CommandType.StoredProcedure;cmd.Parameters.Add("PRN", txName.Text);try {con.Open();cmd.ExecuteNonQuery();con.Close(); }catch (Exception ex) {MessageBox.Show(ex.Message);DialogResult = DialogResult.None;} } } } }}


1. Рик Гринвальд, Роберт Стаковьяк, Джонатан Стерн, Oracle 11g. Основы. Символ-Плюс. 464 стр. 2009.
2. С. Фейерштейн, Б. Прибыл. Oracle PL/SQL. Для профессионалов. 800 стр. 2011. Питер.
3. Скотт Урман. Oracle9i. Программирование на языке PL/SQL. Лори, 2004
4. Сэм Алапати . Oracle Database 11g. Руководство администратора баз данных. 1440 стр. 2010. Вильямс.
5. К.Е.Кляйн, Д.Кляйн, Б.Хант - SQL. Справочник, 3-е издание – 2010 Символ, 2010.
6. Фленов Михаил Библия C#; БХВ-Петербург, 2011. - 560 c.
7. Гросс, К. Самоучитель C# 2008 / К. Гросс – БХВ-Петербург., 2009. – 576с.
8. Герберт Шилдт. C# 4.0. Полное руководство. ISBN 978 5 8459 1684 6. Вильямс. 2010.
9. Гвоздева Т.В., Баллод Б.А. Проектирование информационных систем. - М.: Феникс, 2009. - 512 с.
10. Ларман Крэг UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку. 2013г.


Вопрос-ответ:

Какие информационные технологии используются при разработке БД для АСУ Деканат?

При разработке базы данных для АСУ Деканат применяются различные информационные технологии, включая языки программирования (например, SQL), системы управления базами данных (СУБД) и инструменты разработки. Конкретные технологии выбираются исходя из требований и возможностей проекта.

Какие аналоги аналитической системы управления Деканат существуют?

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

Какое программное обеспечение используется при реализации разработанной базы данных?

Для реализации разработанной базы данных могут быть использованы различные программные средства. Одним из ключевых инструментов является система управления базами данных (СУБД), которая позволяет создавать, хранить, изменять и извлекать данные. Кроме того, может быть использовано программное обеспечение для разработки пользовательского интерфейса и вспомогательные инструменты для управления и анализа данных.

Какие требования предъявляются к разрабатываемой базе данных для АСУ Деканат?

Разрабатываемая база данных для АСУ Деканат должна удовлетворять определенным требованиям, чтобы обеспечить эффективное и надежное функционирование системы. Это могут быть требования к производительности, безопасности, масштабируемости, доступности данных, точности хранения информации и другие. Конкретные требования зависят от потребностей и особенностей деканата.

Какой продукт для разработки базы данных будет наиболее подходящим для АСУ Деканат?

Выбор продукта для разработки базы данных зависит от конкретных требований и особенностей АСУ Деканат. Существует множество СУБД, таких как Oracle, MySQL, PostgreSQL, Microsoft SQL Server и другие, которые могут быть рассмотрены в качестве возможных вариантов. Окончательный выбор будет зависеть от факторов, таких как бюджет, масштаб проекта, требования к производительности и поддержке.

Какие технологии были использованы при разработке базы данных для АСУ Деканат?

При разработке базы данных для АСУ Деканат были использованы различные информационные технологии, такие как язык программирования SQL, система управления базами данных (СУБД) и инструменты проектирования баз данных.

Какие продукты-аналоги существуют для разработки баз данных в предметной области АСУ Деканат?

В предметной области АСУ Деканат существуют различные продукты-аналоги, которые также предназначены для управления базами данных. Некоторые из таких продуктов включают 1С:Предприятие, Oracle Database и Microsoft SQL Server. Однако, при разработке базы данных для АСУ Деканат был выбран определенный продукт в соответствии с требованиями проекта.

Как происходило проектирование базы данных для АСУ Деканат?

Проектирование базы данных для АСУ Деканат происходило в несколько этапов. Сначала была разработана инфологическая модель, которая описывает структуру данных и связи между ними. Затем производилась нормализация базы данных и построение концептуальной модели. На последнем этапе осуществлялось физическое проектирование базы данных, включающее выбор СУБД и определение структуры таблиц, полей и связей.

Какие требования были предъявлены к разрабатываемой базе данных для АСУ Деканат?

К разрабатываемой базе данных для АСУ Деканат были предъявлены различные требования. В частности, требовалось обеспечить хранение и управление информацией о студентах, преподавателях, расписании занятий, успеваемости и других аспектах академической жизни. Также были установлены требования к производительности, безопасности и удобству использования базы данных.

Какие этапы включала программная реализация базы данных для АСУ Деканат?

Программная реализация базы данных для АСУ Деканат включала несколько этапов. Сначала проводился анализ и выбор подходящей СУБД, учитывая требования проекта. Затем осуществлялось физическое проектирование базы данных, включая создание таблиц, определение связей между таблицами и настройку параметров СУБД. После этого проводилось тестирование и оптимизация базы данных для обеспечения ее эффективной работы.

Зачем нужна разработка базы данных для АСУ Деканат?

Разработка базы данных для АСУ Деканат необходима для эффективного управления образовательным процессом. Благодаря базе данных становится возможным хранить и обрабатывать информацию о студентах, учебных планах, расписаниях занятий и других данных, которые необходимы для работы деканата.

Какие требования предъявляются к разрабатываемой базе данных для АСУ Деканат?

К разрабатываемой базе данных для АСУ Деканат предъявляются следующие требования: она должна быть надежной, безопасной, масштабируемой и оптимизированной для работы с большим объемом данных. Также важно, чтобы база данных была удобной в использовании и обладала гибкими возможностями для анализа и отчетности.