415

Розробка електронної системи бібліотечної картотеки

Курсовая

Информатика, кибернетика и программирование

Створення електронної системи бібліотеки, де всі дані про читачів і книги зібрані в базі даних, і куди при необхідності можна легко заносити, змінювати та видаляти дані. Електронна система з одержання, та повернення книг.

Украинкский

2013-01-06

621 KB

36 чел.

Зміст

1. Вступ

2. Постановка задачі

3. Опис бази даних

4. Опис інтерфейсу

4.1. Сторінки клієнта

4.2. Сторінки адміністратора

Висновки

Список використаної літератури

Додатки

Додаток А

Додаток Б

Додаток В

  1.  Вступ

В наш час бібліотекою користується велика кількість людей. Для систематизації інформації про читачів та книги використовують різні засоби: записи до блокнотів, карток читача. Вся ця документація займає багато місця і в ній дуже незручно шукати необхідну інформацію. Виходом з цієї ситуації є створення електронної системи бібліотеки, де всі дані про читачів і книги зібрані в базі даних, і куди при необхідності можна легко заносити, змінювати та видаляти дані. Саме ці задачі реалізовані в курсовій роботі.

  1.  Постановка задачі

Електронна система з одержання, та повернення книг дозволяє швидше вирішувати завдання бібліотекаря з обліку книг в бібліотеці, і впорядковує всі необхідні дані про клієнтів, і книги в базі даних. Веб-інтерфейс створено за допомогою технології ASP.NET і мови HTML з використанням CSS (каскадних таблиць стилів) у середовищі MS Visual Studio 2010. Основна мова програмування C#. База данних створена на мові Transact-SQL у середовищі MS Management Studio 2008.

  1.  Опис бази даних

База даних містить 6 таблиць: «Видачі», «Книги», «Автори», «Читачі», «Повернення», «Видавництва». Також у базі присутні 2 тригери: «insert_returns», «insert_issuance». Код для створення бази, таблиць та тригерів знаходиться у додатку. На рис.1 зображена діаграма, де відображені всі зв’язки між таблицями в базі.

Рис. 1.  Діаграма бази даних, яка відображає зв’язки між таблицями

  1.  Опис інтерфейсу

Інтерфейс проекту ділиться на два типи: Клієнтський і Адміністраторський. Клієнт може переглядати певні сторінки, але не може вносити зміни в базу. Адміністратор наділений повноваженнями змінювати, вставляти та видаляти дані у всіх таблицях бази. Для підтвердження своєї особистості адміністратору необхідно пройти авторизацію на сайті.

На сторінках присутні всі необхідні елементи управління, які дозволяють зробити інтерфейс більш дружнім. Наприклад: Menu, Grid View, Details View. Дизайн реалізований за допомогою технології Master Page та розмітки HTML з використанням каскадних таблиць стилів (CSS). Ці технології дозволили модернізувати сайт і зробити проект більш зручним як для клієнта так і для адміністратора.

  1.  Сторінки клієнта

Рис. 2. Перегляд Клієнтської сторінки Автори

Рис. 3. Перегляд Клієнтської сторінки Видавництва

Рис. 4. Перегляд Клієнтської сторінки  Книги

Рис. 5. Перегляд Клієнтської сторінки Авторизація Користувача

  1.  Сторінки адміністратора

Рис. 6. Редагування таблиці Повернення

Рис. 7. Перегляд таблиці Видачі Детальніше

Рис. 8. Перегляд таблиці Видавництва Детальніше

Рис. 9. Перегляд таблиці Книги Детальніше

Рис. 10. Редагування таблиці Книги

Рис. 11. Редагування таблиці Читачі

Висновки

В ході виконання курсового проекту була розроблена модель бази даних бібліотеки. Були освоєні основні прийоми проектування в SQL Server Management Studio. Результатом виконання курсового проекту є фізична модель, спроектована в інструментальному середовищі Microsoft Visual Studio 2010. Я вважаю що у випуску SQL Server Management Studio велике число графічних засобів поєднується з набором повно функціональних редакторів скриптів для доступу розробників та адміністраторів з будь-яким рівнем знань до SQL Server, тому з цією програмою було легко працювати. У програмі Microsoft Visual Studio 2010 став в пригоді новий інтерфейс створений з використанням технології WPF (Windows Presentation Foundation), в ньому перероблені і реорганізовані меню і панелі інструментів, оновлено редактор коду, що дозволило легко створювати будь-які візуальні плагіни. Тому я вибрав саме ці програми, з допомогою яких я створив свій проект.

Список використаної літератури

  1.  Д. Кренке.  Теория и практика построения баз данных. 8-е изд. - Спб.: Питер, 2003. - 800 с.
  2.  С. Байдачный, Д. Маленко, Ю. Лозинский. SQL Server 2005: новые возможности для разработчиков - М.: СОЛОН - Пресс, 2006 - 208с.
  3.  Вендров А.М. Case - технологии. Современные методы и средства проектирования информационных систем. - 158 с., ил.
  4.  Марка Д., МакГоуэн К. Методология структурного анализа и проектирования: Пер. с англ. - М.: 1999.- 240 с., ил.
  5.  Грабер М. Введение в SQL: Пер. с англ. - М.: “ЛОРИ”, 1996.- 341с., ил.
  6.  Дейт К. Дж. Введение в системы баз данных: Пер. с англ. - 6-е изд. - К.: Диалектика, 1998. - 784с., ил.
  7.  Соммервилл И. Инженерия программного обеспечения. - М.: Вильямс, 2002. 624 с.
  8.  Орлов С.А. Технологии разработки программного обеспечения. – СПб.: Питер, 2003. 480 с.
  9.  Иванова Г.С. Технология программирования. М.: изд-во МГТУ имени Н.Э. Баумана, 2002 - 320 с.


Додатки

Додаток А

Створення бази даних (Transact-SQL)

USE [master]

GO

CREATE DATABASE [Mihaylenko_Library] ON  PRIMARY

( NAME = N'Mihaylenko_Library', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Mihaylenko_Library.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )

LOG ON

( NAME = N'Mihaylenko_Library_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Mihaylenko_Library_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)

GO

ALTER DATABASE [Mihaylenko_Library] SET COMPATIBILITY_LEVEL = 100

GO

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [Mihaylenko_Library].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

ALTER DATABASE [Mihaylenko_Library] SET ANSI_NULL_DEFAULT OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET ANSI_NULLS OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET ANSI_PADDING OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET ANSI_WARNINGS OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET ARITHABORT OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET AUTO_CLOSE OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET AUTO_CREATE_STATISTICS ON

GO

ALTER DATABASE [Mihaylenko_Library] SET AUTO_SHRINK OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET AUTO_UPDATE_STATISTICS ON

GO

ALTER DATABASE [Mihaylenko_Library] SET CURSOR_CLOSE_ON_COMMIT OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET CURSOR_DEFAULT  GLOBAL

GO

ALTER DATABASE [Mihaylenko_Library] SET CONCAT_NULL_YIELDS_NULL OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET NUMERIC_ROUNDABORT OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET QUOTED_IDENTIFIER OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET RECURSIVE_TRIGGERS OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET  DISABLE_BROKER

GO

ALTER DATABASE [Mihaylenko_Library] SET AUTO_UPDATE_STATISTICS_ASYNC OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET DATE_CORRELATION_OPTIMIZATION OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET TRUSTWORTHY OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET ALLOW_SNAPSHOT_ISOLATION OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET PARAMETERIZATION SIMPLE

GO

ALTER DATABASE [Mihaylenko_Library] SET READ_COMMITTED_SNAPSHOT OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET HONOR_BROKER_PRIORITY OFF

GO

ALTER DATABASE [Mihaylenko_Library] SET  READ_WRITE

GO

ALTER DATABASE [Mihaylenko_Library] SET RECOVERY FULL

GO

ALTER DATABASE [Mihaylenko_Library] SET  MULTI_USER

GO

ALTER DATABASE [Mihaylenko_Library] SET PAGE_VERIFY CHECKSUM  

GO

ALTER DATABASE [Mihaylenko_Library] SET DB_CHAINING OFF

GO

Додаток Б

Створення таблиць (Transact-SQL)

Таблиця  “Авторы”

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Авторы](

[IDАвтора] [int] IDENTITY(1,1) NOT NULL,

[ФИО] [nvarchar](50) NOT NULL,

CONSTRAINT [PK_Авторы] PRIMARY KEY CLUSTERED

(

[IDАвтора] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

Таблиця Возвраты

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Возвраты](

[IDВозврата] [int] IDENTITY(1,1) NOT NULL,

[Книга] [int] NULL,

[Читатель] [int] NULL,

[ДатаВозврата] [datetime] NULL,

CONSTRAINT [PK_Возвраты] PRIMARY KEY CLUSTERED

(

[IDВозврата] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Возвраты]  WITH CHECK ADD  CONSTRAINT [FK_Возвраты_Книги] FOREIGN KEY([Книга])

REFERENCES [dbo].[Книги] ([IDКниги])

GO

ALTER TABLE [dbo].[Возвраты] CHECK CONSTRAINT [FK_Возвраты_Книги]

GO

ALTER TABLE [dbo].[Возвраты]  WITH CHECK ADD  CONSTRAINT [FK_Возвраты_Читатели] FOREIGN KEY([Читатель])

REFERENCES [dbo].[Читатели] ([IDЧитателя])

GO

ALTER TABLE [dbo].[Возвраты] CHECK CONSTRAINT [FK_Возвраты_Читатели]

GO

ALTER TABLE [dbo].[Возвраты] ADD  CONSTRAINT [DF_Возвраты_ДатаВозврата]  DEFAULT (getdate()) FOR [ДатаВозврата]

GO

Таблиця Выдачи

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Выдачи](

[IDВыдачи] [int] IDENTITY(1,1) NOT NULL,

[Книга] [int] NULL,

[Читатель] [int] NULL,

[ДатаВыдачи] [datetime] NULL,

CONSTRAINT [PK_Выдачи] PRIMARY KEY CLUSTERED

(

[IDВыдачи] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Выдачи]  WITH CHECK ADD  CONSTRAINT [FK_Выдачи_Книги] FOREIGN KEY([Книга])

REFERENCES [dbo].[Книги] ([IDКниги])

GO

ALTER TABLE [dbo].[Выдачи] CHECK CONSTRAINT [FK_Выдачи_Книги]

GO

ALTER TABLE [dbo].[Выдачи]  WITH CHECK ADD  CONSTRAINT [FK_Выдачи_Читатели] FOREIGN KEY([Читатель])

REFERENCES [dbo].[Читатели] ([IDЧитателя])

GO

ALTER TABLE [dbo].[Выдачи] CHECK CONSTRAINT [FK_Выдачи_Читатели]

GO

ALTER TABLE [dbo].[Выдачи] ADD  CONSTRAINT [DF_Выдачи_ДатаВыдачи]  DEFAULT (getdate()) FOR [ДатаВыдачи]

GO

Таблиця Издательства

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Издательства](

[IDИздательства] [int] IDENTITY(1,1) NOT NULL,

[Название] [nvarchar](50) NULL,

CONSTRAINT [PK_Издательство] PRIMARY KEY CLUSTERED

(

[IDИздательства] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

Таблиця Книги

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Книги](

[IDКниги] [int] IDENTITY(1,1) NOT NULL,

[Название] [nvarchar](50) NULL,

[Автор] [int] NULL,

[Издательство] [int] NULL,

[КоличествоЭкземпляров] [int] NULL,

CONSTRAINT [PK_Книги] PRIMARY KEY CLUSTERED

(

[IDКниги] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Книги]  WITH CHECK ADD  CONSTRAINT [FK_Книги_Авторы] FOREIGN KEY([Автор])

REFERENCES [dbo].[Авторы] ([IDАвтора])

GO

ALTER TABLE [dbo].[Книги] CHECK CONSTRAINT [FK_Книги_Авторы]

GO

ALTER TABLE [dbo].[Книги]  WITH CHECK ADD  CONSTRAINT [FK_Книги_Издательство] FOREIGN KEY([Издательство])

REFERENCES [dbo].[Издательства] ([IDИздательства])

GO

ALTER TABLE [dbo].[Книги] CHECK CONSTRAINT [FK_Книги_Издательство]

GO

Таблиця -Читатели

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Читатели](

[IDЧитателя] [int] IDENTITY(1,1) NOT NULL,

[ФИО] [nvarchar](50) NOT NULL,

[НомерЧБ] [int] NULL,

[Телефон] [nvarchar](20) NULL,

[Адрес] [nvarchar](100) NULL,

CONSTRAINT [PK_Читатели] PRIMARY KEY CLUSTERED

(

[IDЧитателя] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

Додаток В

Тригери (Transact-SQL)

Тригер insert_returns

Тригер insert_returns при видачі книг в таблиці <<Выдачи>> зменшує <<КоличествоЭкземпляров>> на 1  в таблиці <<Книги>>.

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER TRIGGER [dbo].[insert_issuance]

ON [dbo].[Выдачи]

FOR INSERT

AS

DECLARE @IdIssuance int, @Idbook int

SELECT @IdIssuance=[IDВыдачи] FROM Inserted

IF @IdIssuance>0

BEGIN

SELECT @IdBook =(SELECT[Выдачи].[Книга] FROM [Выдачи] WHERE IDВыдачи =@IdIssuance)

UPDATE [Книги] SET [Книги].[КоличествоЭкземпляров] = [Книги].КоличествоЭкземпляров-1 WHERE IDКниги = @IdBook

END

Тригер insert_issuance

Тригер insert_issuance при поверненні книг в таблиці <<Возврат>> збільшує <<КоличествоЭкземпляров>> на 1  в таблиці <<Книги>>.

USE [Mihaylenko_Library]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER TRIGGER [dbo].[insert_returns]

ON [dbo].[Возвраты]

FOR INSERT

AS

DECLARE @IdReturn int, @Idbook int

SELECT @IdReturn=[IDВозврата] FROM Inserted

IF @IdReturn>0

BEGIN

SELECT @IdBook =(SELECT[Возвраты].[Книга] FROM [Возвраты] WHERE IDВозврата =@IdReturn)

UPDATE [Книги] SET [Книги].[КоличествоЭкземпляров] = [Книги].КоличествоЭкземпляров+1 WHERE IDКниги = @IdBook

END


 

А также другие работы, которые могут Вас заинтересовать

73650. Организация надзора за метрологическим обеспечением единства измерений 64.5 KB
  Организация надзора за метрологическим обеспечением единства измерений Студент должен иметь представление: о целях и задачах государственного метрологического надзора; о сферах применения государственного и ведомственного надзора; о видах государственного надзора; знать: порядок проведения и оформления государственного надзора. Государственный надзор за состоянием и применением средств измерений эталонами аттестованными методиками выполнения измерений и соблюдением метрологических правил. Права государственных...
73651. Економічна система 430.38 KB
  Сутність та структура економічної системи. Національні та міжнародна економічні системи. Формування глобальної економічної системи У результаті вивчення даної теми студенти зможуть поглибити власні знання які стосуються розуміння природи визначальних характеристик і особливостей функціонування економічних систем. Сутність та структура економічної системи Проблема економічних систем суспільства їх генезису чинників та логіки становлення є однією з найбільш актуальних у сучасній економічній науці.
73652. Опыт единоличной власти в России в XVI-XX веков 52.54 KB
  В многовековой истории России за редким исключением государство брало верх над обществом. как системы политических и экономических мер установление в России режима личной власти царя. Сложившаяся геополитическая ситуация благоприятствовала национальному возрождению России и превращению ее в крупное европейское государство.