Разработка базы данных для системы-агрегатора в области музыки и искусства

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Проектирование баз данных
  • 37 37 страниц
  • 5 + 5 источников
  • Добавлена 18.06.2019
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
Содержание

Введение 3
1 Выбор технологии и программных средств 4
1.1 MS SQL Server 4
1.2 Visual Studio 5
2 Проектирование базы данных 10
3 Разработка процедур доступа к данным, ограничения 19
Заключение 25
Список использованных источников 26
Приложение. 27
Приложение А. SQL скрипт базы данных 27

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

[show]--PRINT (N'Создать индекс [IX_Relationship2] для объекта типа таблица [dbo].[show]')GOCREATE INDEX IX_Relationship2 ON dbo.show (id_pl) ON [PRIMARY]GO---- Создатьиндекс [IX_Relationship3] дляобъектатипатаблица [dbo].[show]--PRINT (N'Создатьиндекс [IX_Relationship3] дляобъектатипатаблица [dbo].[show]')GOCREATE INDEX IX_Relationship3 ON dbo.show (id_km) ON [PRIMARY]GO---- Создатьиндекс [IX_Relationship4] дляобъектатипатаблица [dbo].[show]--PRINT (N'Создатьиндекс [IX_Relationship4] дляобъектатипатаблица [dbo].[show]')GOCREATE INDEX IX_Relationship4 ON dbo.show (id_av) ON [PRIMARY]GO---- Создатьиндекс [IX_Relationship5] дляобъектатипатаблица [dbo].[show]--PRINT (N'Создатьиндекс [IX_Relationship5] дляобъектатипатаблица [dbo].[show]')GOCREATE INDEX IX_Relationship5 ON dbo.show (id_gn) ON [PRIMARY]GOSET QUOTED_IDENTIFIER, ANSI_NULLS ONGO---- Создать процедуру [dbo].[ticketSale]--GOPRINT (N'Создатьпроцедуру [dbo].[ticketSale]')GOCREATE OR ALTER PROCEDURE dbo.ticketSale @id_sh INT, @cntTick INTAS UPDATE show SETshCntFree = shCntFree - @cntTick WHERE id_sh = @id_shGO---- Создатьпроцедуру [dbo].[showUpd]--GOPRINT (N'Создатьпроцедуру [dbo].[showUpd]')GOCREATE OR ALTER PROCEDURE dbo.showUpd @shDateTime DATETIME, @stCost MONEY, @shCntTick INT, @shCntFree INT, @id_pl INT, @id_km INT, @id_av INT, @id_gn INT, @id_sh INTAS UPDATE show SET shDateTime = @shDateTime,stCost = @stCost,shCntTick = @shCntTick,shCntFree = @shCntFree,id_pl = @id_pl,id_km = @id_km,id_av = @id_av,id_gn = @id_gn WHERE id_sh = @id_sh;GO---- Создать процедуру [dbo].[showIns]--GOPRINT (N'Создатьпроцедуру [dbo].[showIns]')GOCREATE OR ALTER PROCEDURE dbo.showIns @shDateTime DATETIME, @stCost MONEY, @shCntTick INT, @id_pl INT, @id_km INT, @id_av INT, @id_gn INTAS INSERT INTO show (shDateTime, stCost, shCntTick, shCntFree, id_pl, id_km, id_av, id_gn) VALUES (@shDateTime, @stCost, @shCntTick, @shCntTick, @id_pl, @id_km, @id_av, @id_gn);GO---- Создать процедуру [dbo].[showDel]--GOPRINT (N'Создатьпроцедуру [dbo].[showDel]')GOCREATE OR ALTER PROCEDURE dbo.showDel @id_sh INTAS DELETE FROM show WHERE id_sh = @id_shGO---- Создать таблицу [dbo].[place]--PRINT (N'Создатьтаблицу [dbo].[place]')GOCREATE TABLE dbo.place (id_pl int IDENTITY,plNamevarchar(50) NULL,plVol int NULL,plAdresvarchar(150) NULL, CONSTRAINT PK_place PRIMARY KEY CLUSTERED (id_pl), CHECK ([plVol]>=(0)))ON [PRIMARY]GO---- Создатьпроцедуру [dbo].[placeUpd]--GOPRINT (N'Создатьпроцедуру [dbo].[placeUpd]')GOCREATE OR ALTER PROCEDURE dbo.placeUpd @plNameVARCHAR(50), @plVol INT, @plAdresVARCHAR(150), @id_pl INTAS UPDATE place SET plName = @plName,plVol = @plVol,plAdres = @plAdres WHERE id_pl = @id_pl;GO---- Создать процедуру [dbo].[placeIns]--GOPRINT (N'Создатьпроцедуру [dbo].[placeIns]')GOCREATE OR ALTER PROCEDURE dbo.placeIns @plNameVARCHAR(50), @plVol INT, @plAdresVARCHAR(150)AS INSERT INTO place (plName, plVol, plAdres) VALUES (@plName, @plVol, @plAdres);GO---- Создатьпроцедуру [dbo].[placeDel]--GOPRINT (N'Создатьпроцедуру [dbo].[placeDel]')GOCREATE OR ALTER PROCEDURE dbo.placeDel @id_pl INTAS DELETE FROM place WHERE id_pl = @id_plGO---- Создать таблицу [dbo].[kind]--PRINT (N'Создатьтаблицу [dbo].[kind]')GOCREATE TABLE dbo.kind (id_km int IDENTITY,kmNamevarchar(50) NULL, CONSTRAINT PK_kind PRIMARY KEY CLUSTERED (id_km))ON [PRIMARY]GO---- Создатьпроцедуру [dbo].[kindUpd]--GOPRINT (N'Создатьпроцедуру [dbo].[kindUpd]')GOCREATE OR ALTER PROCEDURE dbo.kindUpd @kmNameVARCHAR(50), @id_km INTAS UPDATE kind SET kmName = @kmName WHERE id_km = @id_km;GO---- Создать процедуру [dbo].[kindIns]--GOPRINT (N'Создатьпроцедуру [dbo].[kindIns]')GOCREATE OR ALTER PROCEDURE dbo.kindIns @kmNameVARCHAR(50)AS INSERT INTO kind (kmName) VALUES (@kmName); GO---- Создатьпроцедуру [dbo].[kindDel]--GOPRINT (N'Создатьпроцедуру [dbo].[kindDel]')GOCREATE OR ALTER PROCEDURE dbo.kindDel @id_km INTAS DELETE FROM kind WHERE id_km = @id_kmGO---- Создать таблицу [dbo].[genree]--PRINT (N'Создать таблицу [dbo].[genree]')GOCREATE TABLE dbo.genree (id_gn int IDENTITY,gnNamevarchar(50) NULL, CONSTRAINT PK_genree PRIMARY KEY CLUSTERED (id_gn))ON [PRIMARY]GO---- Создатьпроцедуру [dbo].[genreIns]--GOPRINT (N'Создатьпроцедуру [dbo].[genreIns]')GOCREATE OR ALTER PROCEDURE dbo.genreIns @gnNameVARCHAR(50)AS INSERT INTO genree (gnName) VALUES (@gnName); GO---- Создатьпроцедуру [dbo].[genreeUpd]--GOPRINT (N'Создатьпроцедуру [dbo].[genreeUpd]')GOCREATE OR ALTER PROCEDURE dbo.genreeUpd @gnNameVARCHAR(50), @id_gn INTAS UPDATE genree SET gnName = @gnName WHERE id_gn = @id_gn;GO---- Создать процедуру [dbo].[genreeDel]--GOPRINT (N'Создатьпроцедуру [dbo].[genreeDel]')GOCREATE OR ALTER PROCEDURE dbo.genreeDel @id_gn INTAS DELETE FROM genree WHERE id_gn = @id_gnGO---- Создать таблицу [dbo].[avtors]--PRINT (N'Создать таблицу [dbo].[avtors]')GOCREATE TABLE dbo.avtors (id_av int IDENTITY,avNamevarchar(100) NULL, CONSTRAINT PK_avtors PRIMARY KEY CLUSTERED (id_av))ON [PRIMARY]GO---- Создатьпроцедуру [dbo].[showSelPl]--GOPRINT (N'Создатьпроцедуру [dbo].[showSelPl]')GOCREATE OR ALTER PROCEDURE dbo.showSelPl @id_pl INTAS SELECTshow.id_sh,show.shDateTime,show.stCost,show.shCntTick,show.shCntFree,show.id_pl,place.plName,show.id_km,kind.kmName,show.id_av,avtors.avName,show.id_gn,genree.gnName FROM dbo.show INNER JOIN dbo.genree ON show.id_gn = genree.id_gn INNER JOIN dbo.avtors ON show.id_av = avtors.id_av INNER JOIN dbo.kind ON show.id_km = kind.id_km INNER JOIN dbo.place ON show.id_pl = place.id_pl WHERE show.id_pl = @id_plGO---- Создать процедуру [dbo].[showSelGen]--GOPRINT (N'Создатьпроцедуру [dbo].[showSelGen]')GOCREATE OR ALTER PROCEDURE dbo.showSelGen @id_gn INTAS SELECTshow.id_sh,show.shDateTime,show.stCost,show.shCntTick,show.shCntFree,show.id_pl,place.plName,show.id_km,kind.kmName,show.id_av,avtors.avName,show.id_gn,genree.gnName FROM dbo.show INNER JOIN dbo.genree ON show.id_gn = genree.id_gn INNER JOIN dbo.avtors ON show.id_av = avtors.id_av INNER JOIN dbo.kind ON show.id_km = kind.id_km INNER JOIN dbo.place ON show.id_pl = place.id_pl WHERE show.id_gn = @id_gnGO---- Создать процедуру [dbo].[showSelDate]--GOPRINT (N'Создатьпроцедуру [dbo].[showSelDate]')GOCREATE OR ALTER PROCEDURE dbo.showSelDate @dtDate DATETIMEAS SELECTshow.id_sh,show.shDateTime,show.stCost,show.shCntTick,show.shCntFree,show.id_pl,place.plName,show.id_km,kind.kmName,show.id_av,avtors.avName,show.id_gn,genree.gnName FROM dbo.show INNER JOIN dbo.genree ON show.id_gn = genree.id_gn INNER JOIN dbo.avtors ON show.id_av = avtors.id_av INNER JOIN dbo.kind ON show.id_km = kind.id_km INNER JOIN dbo.place ON show.id_pl = place.id_pl WHERE shDateTime > = @dtDateGO---- Создатьпроцедуру [dbo].[showSelAv]--GOPRINT (N'Создатьпроцедуру [dbo].[showSelAv]')GOCREATE OR ALTER PROCEDURE dbo.showSelAv @id_av INTAS SELECTshow.id_sh,show.shDateTime,show.stCost,show.shCntTick,show.shCntFree,show.id_pl,place.plName,show.id_km,kind.kmName,show.id_av,avtors.avName,show.id_gn,genree.gnName FROM dbo.show INNER JOIN dbo.genree ON show.id_gn = genree.id_gn INNER JOIN dbo.avtors ON show.id_av = avtors.id_av INNER JOIN dbo.kind ON show.id_km = kind.id_km INNER JOIN dbo.place ON show.id_pl = place.id_pl WHERE show.id_av = @id_avGO---- Создать процедуру [dbo].[avtorsUpd]--GOPRINT (N'Создатьпроцедуру [dbo].[avtorsUpd]')GOCREATE OR ALTER PROCEDURE dbo.avtorsUpd @avNameVARCHAR(50), @id_av INTAS UPDATE avtors SET avName = @avName WHERE id_av = @id_av;GO---- Создать процедуру [dbo].[avtorsIns]--GOPRINT (N'Создатьпроцедуру [dbo].[avtorsIns]')GOCREATE OR ALTER PROCEDURE dbo.avtorsIns @avNameVARCHAR(50)AS INSERT INTO avtors (avName)VALUES (@avName);GO---- Создать процедуру [dbo].[avtorsDel]--GOPRINT (N'Создатьпроцедуру [dbo].[avtorsDel]')GOCREATE OR ALTER PROCEDURE dbo.avtorsDel @id_av INTAS DELETE FROM avtors WHERE id_av = @id_avGO-- -- Вывод данных для таблицы avtors--PRINT (N'Вывод данных для таблицы avtors')-- Таблица artObject.dbo.avtors не содержит данных-- -- Вывод данных для таблицы genree--PRINT (N'Вывод данных для таблицы genree')-- Таблица artObject.dbo.genree не содержит данных-- -- Вывод данных для таблицы kind--PRINT (N'Вывод данных для таблицы kind')-- Таблица artObject.dbo.kind не содержит данных-- -- Вывод данных для таблицы place--PRINT (N'Вывод данных для таблицы place')-- Таблица artObject.dbo.place не содержит данных-- -- Вывод данных для таблицы show--PRINT (N'Вывод данных для таблицы show')-- Таблица artObject.dbo.show не содержит данныхUSE artObjectGOIF DB_NAME() <> N'artObject' SET NOEXEC ONGO---- Создать внешний ключ [Relationship2] для объекта типа таблица [dbo].[show]--PRINT (N'Создать внешний ключ [Relationship2] для объекта типа таблица [dbo].[show]')GOALTER TABLE dbo.show ADD CONSTRAINT Relationship2 FOREIGN KEY (id_pl) REFERENCES dbo.place (id_pl)GO---- Создать внешний ключ [Relationship3] для объекта типа таблица [dbo].[show]--PRINT (N'Создать внешний ключ [Relationship3] для объекта типа таблица [dbo].[show]')GOALTER TABLE dbo.show ADD CONSTRAINT Relationship3 FOREIGN KEY (id_km) REFERENCES dbo.kind (id_km)GO---- Создать внешний ключ [Relationship4] для объекта типа таблица [dbo].[show]--PRINT (N'Создать внешний ключ [Relationship4] для объекта типа таблица [dbo].[show]')GOALTER TABLE dbo.show ADD CONSTRAINT Relationship4 FOREIGN KEY (id_av) REFERENCES dbo.avtors (id_av)GO---- Создать внешний ключ [Relationship5] для объекта типа таблица [dbo].[show]--PRINT (N'Создать внешний ключ [Relationship5] для объекта типа таблица [dbo].[show]')GOALTER TABLE dbo.show ADD CONSTRAINT Relationship5 FOREIGN KEY (id_gn) REFERENCES dbo.genree (id_gn)GOSET NOEXEC OFFGO

Список использованных источников

1. Пирогов, В.Ю. Информационные системы и базы данных: организация и проектирование: Учебное пособие / В.Ю. Пирогов. - СПб.: БХВ-Петербург, 2009. - 528 c.
2. К.Е.Кляйн, Д.Кляйн, Б.Хант - SQL. Справочник, 3-е издание – 2010 Символ, 2010.
3. Microsoft SQL Server 2012. Руководство для начинающих. Д. Петкович. BHV. 2013.
4. Проектирование серверной инфраструктуры баз данных Microsoft SQL Server 2005. Учебный курс Microsoft. Дж. Макин, М.Хотек. Русская редакция. 2008.
5. Microsoft SQL Server. Эффективная работа. Алексей Вишневский. Питер. 2009.

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

Какие технологии и программные средства были выбраны для разработки базы данных?

Для разработки базы данных для системы агрегатора в области музыки и искусства были выбраны MS SQL Server и Visual Studio.

Почему была выбрана именно MS SQL Server?

Мы выбрали MS SQL Server, так как он является мощной и надежной реляционной системой управления базами данных, которая обеспечивает высокую производительность и безопасность.

Какие возможности предоставляет программа Visual Studio для разработки баз данных?

Visual Studio предоставляет широкий набор инструментов и функций для проектирования и разработки баз данных, включая возможность создания таблиц, процедур доступа к данным и индексов.

Опишите процесс проектирования базы данных для системы агрегатора в области музыки и искусства.

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

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

При разработке базы данных были использованы различные источники информации, включая профессиональную литературу по базам данных, документацию MS SQL Server и рекомендации от экспертов в области разработки баз данных.

Какая технология и программное средство были выбраны для разработки базы данных?

Была выбрана технология MS SQL Server и программная среда Visual Studio.

Какие функции выполняет MS SQL Server в системе агрегатора музыки и искусства?

MS SQL Server выполняет функции базы данных, хранит и обрабатывает информацию о музыке и искусстве в системе агрегатора.

В какой среде производилось проектирование базы данных?

Проектирование базы данных производилось в среде Visual Studio.

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

Для базы данных были разработаны процедуры доступа к данным ограничениями.

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

При разработке базы данных использовались различные источники информации.