Курсовая работа: Создание базы данных "Wc3 Cybersport Data Base"

Курсовая работа: Создание базы данных "Wc3 Cybersport Data Base"




👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Министерство образования и науки Республики Казахстан
Карагандинский государственный технический университет
по дисциплине: «Технология разработки баз данных»
Тема: «Создание базы данных «Wc3 Cybersport Data Base»»
3.1.2 Структура хранимой информации
В настоящее время любая серьезная организация использует различные базы данных для автоматизации процессов обработки информации, удобства в ее эксплуатации, надежности, для предотвращения избыточности повторяющихся данных, а также в целях экономии времени.
В связи с тем, что современные информационные системы оперируют большими объемами и сложными структурами данных, средства управления базами данных позволяют выделить общую часть информационных систем, отвечающую за управление сложными структурированными данными.
Целью выполнения данного курсового проекта является разработка системы «WC3 Cybersport DataBase» и соответствующей ей базы данных, позволяющей документировать в электронном виде данные об игроках, кланах и событиях в мире Варкрафт, а также содержит гибкий генератор запросов и атоматизированный генератор отчетов. Средой разработки базы данных была выбрана СУБД MSSQL Server 2000, поскольку она позволяет работать с реляционной базой данных с использованием технологий клиент-сервер.
В качестве языка программирования был выбран язык Delphi.
Задачей данного курсового проекта является разработка системы «CyberSport DataBase», включающей в себя 3 таблицы:
Players (NickName, Clan, Game Race, Full Name, Age, Country).
Clans (Name, Full Name, Owner, Players, Sponsor, Foundation Date).
Events (Name, Sponsor, Prize, Clan Winner, Players Winner, Date)
Система должна выполнять следующие функции:
Вывести список только игроков с России.
Вывести список «старших» игроков, чей возраст больше 20.
Вывести количество игроков доминирующей страны в клане.
Показать инфо о кланах победителях на различных турнирах.
Подсчитать игроков по расам в игре.
Показать инфо о игроках победителях на различных турнирах.
Основные понятия и определение теории баз данных
Для организации оптимизированного хранения, выборки и представления информации применяются базы данных (БД).
База данных – это совокупность логически связанных данных. Базой данных часто упрощённо или ошибочно называют Системы Управления Базами Банных (СУБД). Нужно различать набор данных (собственно БД) и программное обеспечение, предназначенное для организации и ведения баз данных (СУБД). Одним из основных понятий в БД является атрибут – некоторая характеристика, или параметр, представляемого в БД объекта.
Банк данных – это информационная система, включающая в себя математические, технические, информационные, организационные, программные и языковые средства, обеспечивающие в совокупности централизованную поддержку хранимых данным. Банк данных включает в себя БД и СУБД.
На уровне физической модели электронная БД представляет собой файл или их набор в формате TXT, CSV, Excel, DBF, XML либо в специализированном формате конкретной СУБД. Также в СУБД в понятие физической модели включают специализированные виртуальные понятия, существующие в ёё рамках — таблица, табличное пространство, сегмент, куб, кластер и т.д.
В настоящее время наибольшее распространение получили реляционные базы данных. Картотеками пользовались до появления электронных баз данных. Сетевые и иерархические базы данных считаются устаревшими, объектно-ориентированные пока никак не стандартизированы и не получили широкого распространения. Некоторое возрождение получили иерархические базы данных в связи с появлением и распространением формата XML.
СУБД — специализированная программа (чаще комплекс программ), предназначенная для манипулирования базой данных. Для создания и управления информационной системой СУБД необходима в той же степени, как для разработки программы на алгоритмическом языке необходим транслятор.
управление данными во внешней памяти (на дисках);
управление данными в оперативной памяти;
журнализация изменений и восстановление базы данных после сбоев;
поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты: ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию, процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода, подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД, а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
По типу управляемой базы данных СУБД разделяются на:
По архитектуре организации хранения данных локальные СУБД (все части локальной СУБД размещаются на одном компьютере) распределенные СУБД (части СУБД могут размещаться на двух и более компьютерах)
Созданная база данных содержит три таблицы, хранящих информацию о Игроках, Кланах и мировых событий в жизни киберспорта.
Информацию о Игроках содержит таблица «Players», имеющая следующие атрибуты:
«NickName» - уникальный «Никнэйм» игрока, выступающий в роли первичного ключа таблицы (char 30);
«Clan» - символьный атрибут, содержит клан, в котором состоит игрок (char 30);
«Game Race» - содержит игровую расу (char 30);
«Country» - текущее место проживания (char 50)
«Clans» включает в себя информацию о кланах
«Name» - Сокращенное название клана , используется как приставка к Нику игрока, является первичным ключом (char 30);
«Full Name» - полное название клана (char 255);
«Owner» - ФИО президента клана, в некоторых случаях ФИО менеджера (char 30);
«Players» - Колл-во игроков основного состава клана (numeric);
«Sponsor» - Спонсор клана (char 255)
«Foundation Date» - год основания клана (numeric)
«Events» содержит информацию об основных событиях в жизни игроков Warcraft3
«Name» - Название события, является первичным ключом (char 20);
«Sponsor»- Компания спонсор события (char 50);
«Clan winner» - клан занявший 1 место (char 30)
«Player winner» - игрок занявший 1 место (char 30)
3.1.2 Структура хранимой информации
Для обеспечения целостности данных, таблицы связаны между собой по принципу «один к одному» и «многие к одному» с каскадным обновлением данных.
Наглядно связь между таблицами изображена на рисунке 1.
Рисунок 1 – Связь между таблицами БД «WC3 CyberSport DataBase»
Концептуальное моделирование – это переход от неформализованного описания предметной области к ее формальному изложению с помощью специальных языковых средств. На рисунке 2 представлена концептуальная модель БД «WC3 CyberSport DataBase».
Таблица «Players» - находится в 3 нормальной форме, так как в ней содержится 1 первичный ключ и не имеет транзитивных зависимостей
Таблица «Clans» - находится в 3 нормальной форме, так как в ней содержится 1 первичный ключ и не имеет транзитивных зависимостей
Таблица «Events» - находится в 3 нормальной форме, так как в ней содержится 1 первичный ключ и не имеет транзитивных зависимостей
Select Country, count(Nickname) as Players
select Clan, count(Nickname) as Players, Country
select Clan, max(Players) as Players
SELECT [Game Race], count([Game Race]) as Number
Select Players.Nickname, Players.[full name], Players.country,
Where Players.nickname=Events.[player winner]
SELECT clans.[full name], clans.owner, events.name, events.prize
Where clans.name=events.[clan winner]
Интерфейс программы состоит из одного окна, содержащего четыре основные вкладки При запуске программы открывается окно с активной вкладкой «Players» (рисунок 3).
Здесь содержится список всех игроков
При нажатии на вкладку «Clans» выводится таблица, содержащая список кланов (рисунок 4).
Аналогично, нажав на вкладку «Events», выводится список всех событий (рисунок 5).
В каждой из таблиц можно удалять, добавлять записи, корректировать их, также можно свободно перемещаться по записям (переход в начало-конец, следующая-предыдущая запись).
Вкладка Query являет собой автономный генератор запросов использующий язык SQL, с помощью которого можно создавать, редактировать и удалять запросы.
Также вкладка содержит список созданных запросов.
Рисунок 9 – Отчет по запросу: «Все кланы победители»
В этом курсовом проекте была разработана база данный по игрокам, кланам и главным событиям вселенной Варкрафт. Также оболочка данной БД может быть использована в качестве оболочки для любой базы данных, так как она включает в себя гибкий генератор запросов и автоматизированный генератор отчетов для любого запроса.
2. Т.Карпова – Базы данных: модели, разработка, реализация. Уч. пособие – СПб: Питер,2001.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, ExtCtrls, ComCtrls, DBCtrls, Menus,
ADOTable2FoundationDate: TBCDField;
ADOTable3Playerwinner: TStringField;
Procedure NewEditDelete(i:integer);
procedure NewQuery(Name:string; Query : Trichedit;Dodelete:integer);
procedure PageControl1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure NewQuery1Click(Sender: TObject);
procedure Deletequery1Click(Sender: TObject);
procedure EditQuery1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
procedure ListBox1DblClick(Sender: TObject);
procedure RichEdit1Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
Procedure Normalize(Grid:TDBGrid; Source:TDatasource);
procedure Report1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
Procedure TForm1.Normalize(Grid:TDBGrid; Source:TDatasource);
// ----------- Normalizing Column Width of DBGrid -----------
For x:=0 to grid.Columns.Count-1 do begin
if length(source.DataSet.Fields[x].Text)>i then i:=length(source.DataSet.Fields[x].Text);
grid.Columns.Items[x].Width:= i+25;
Procedure TForm1.NewQuery(Name:string; Query :Trichedit; Dodelete : integer);
AssignFile(F,Extractfilepath(Application.ExeName)+'QueryList.lst');
ini.WriteString(Name,'0',inttostr(richedit1.Lines.Count));
For i:=0 to query.Lines.Count-1 do begin
ini.WriteString(Name,inttostr(i+1),Query.Lines.Strings[i]);
For x:=0 to Listbox1.Items.Count-1 do begin
Writeln(F,Listbox1.items.strings[x]);
Procedure TForm1.NewEditDelete(i:integer);
For x:=0 to listbox1.Items.Count-1 do begin
If Listbox1.Selected[x] then Listbox1.Items.Strings[x]:=Edit1.Text;
For x:=0 to listbox1.Items.Count-1 do begin
procedure TForm1.PageControl1Change(Sender: TObject);
If Pagecontrol1.ActivePage=TabSheet1 then DBNavigator1.DataSource:=DataSource1;
If Pagecontrol1.ActivePage=TabSheet2 then DBNavigator1.DataSource:=DataSource2;
If Pagecontrol1.ActivePage=TabSheet3 then DBNavigator1.DataSource:=DataSource3;
If Pagecontrol1.ActivePage=TabSheet4 then DBNavigator1.DataSource:=DataSource4;
procedure TForm1.FormCreate(Sender: TObject);
// ----------- Normalizing Column Width of DBGrid -----------
ini := TiniFile.Create(extractfilepath(application.ExeName)+'Queryes.ini');
AssignFile(F2,Extractfilepath(Application.ExeName)+'QueryList.lst');
If Pagecontrol1.ActivePage=TabSheet1 then DBNavigator1.DataSource:=DataSource1;
If Pagecontrol1.ActivePage=TabSheet2 then DBNavigator1.DataSource:=DataSource2;
If Pagecontrol1.ActivePage=TabSheet3 then DBNavigator1.DataSource:=DataSource3;
If Pagecontrol1.ActivePage=TabSheet4 then DBNavigator1.DataSource:=DataSource4;
procedure TForm1.Button1Click(Sender: TObject);
statusbar1.SimpleText:='Adding new Query...';
for x:=125 to form1.Width+120 do begin
procedure TForm1.NewQuery1Click(Sender: TObject);
procedure TForm1.Deletequery1Click(Sender: TObject);
statusbar1.SimpleText:='Deleted...';
procedure TForm1.EditQuery1Click(Sender: TObject);
For x:=0 to listbox1.Items.Count-1 do begin
Edit1.Text:=Listbox1.Items.Strings[x];
statusbar1.SimpleText:='Modifying '+edit1.Text+' Query...';
For i:=0 to strtoint(ini.ReadString(Listbox1.Items.Strings[x],'0',''))-1 do
richedit1.Lines.add(ini.ReadString(Listbox1.Items.Strings[x],inttostr(i+1),''));
for x:=125 to form1.Width+120 do begin
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
procedure TForm1.Button2Click(Sender: TObject);
for x:=0 to listbox1.Items.Count-1 do begin
if edit1.Text=listbox1.Items.Strings[x] then begin
messagedlg('Ïðîèçîøëà îøèáêà, íåâåðíî íàçâàíèå çàïðîñà',mtwarning,[mbok],0);
StatusBar1.SimpleText:='Error adding new Query...';
StatusBar1.SimpleText:='Query '+Edit1.Text+' has been succesfully created...'
If Button2.Caption='Edit' then begin
statusbar1.SimpleText:='Query '+edit1.Text+' has been succesfully modifyed...'
for x:=form1.Width+120 downto 125 do begin
procedure TForm1.ListBox1DblClick(Sender: TObject);
// ----- Organizing Query from selected in Listbox ----
For x:=0 to listbox1.Items.Count-1 do begin
For i:=0 to strtoint(ini.ReadString(Listbox1.Items.Strings[x],'0',''))-1 do
if ini.ReadString(Listbox1.items.strings[x],inttostr(i+1),'') = 'Query2' then issecond:=true;
if not ((ini.ReadString(Listbox1.items.strings[x],inttostr(i+1),'') = 'Query2') or (issecond)) then MyQuery1.SQL.Add(ini.ReadString(Listbox1.Items.Strings[x],inttostr(i+1),''));
if not ((ini.ReadString(Listbox1.items.strings[x],inttostr(i+1),'') = 'Query2') or (issecond=false)) then MyQuery2.SQL.Add(ini.ReadString(Listbox1.Items.Strings[x],inttostr(i+1),''));
If not (MyQuery2.SQL.text='') then begin
else Normalize(DbGrid1,datasource4);
StatusBar1.SimpleText:='Completed...';
procedure TForm1.RichEdit1Change(Sender: TObject);
richedit1.SelAttributes.Color:=clblack;
//------------ Making Graphic Design -------------
If (d[x]=' ') or (d[x]='(')or (d[x]=#10) or (ord(d[x])=13) then begin
If (s='from') or (s='where') or (s='group')
or (s='by') or (s='having') or (s='order')
or (s='select') or (s='as') or (s='like')
or (s='update') or (s='set') or (s='sum')
or (s='avg') or (s='max') or (s='min')
richedit1.SelAttributes.Color:=clNavy;
richedit1.SelAttributes.Color:=clblack
//------------------------------------------------
procedure TForm1.CheckBox1Click(Sender: TObject);
procedure TForm1.Report1Click(Sender: TObject);
procedure TForm1.Button3Click(Sender: TObject);
if inputquery(‘Введите пароль','пароль',s) then
procedure TForm1.Button4Click(Sender: TObject);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, QuickRpt, ExtCtrls, QRCtrls, StdCtrls;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
LabelMassive : array[0..100] of TQRLabel;
TextMassive : array[0..100] of TQRDBText;
procedure TForm2.Button1Click(Sender: TObject);
procedure TForm2.Button2Click(Sender: TObject);
for x:=0 to Form1.DBGrid1.Columns.Count-1 do begin
LabelMassive[x]:=TQRLabel.Create(form2);
LabelMassive[x].Parent:=Columnheaderband1;
LabelMassive[x].Font.Style:=[fsbold];
LabelMassive[x].Caption:=Form1.DBGrid1.Columns[x].FieldName;
LabelMassive[x].Top:=trunc(columnheaderband1.Height/2);
labelmassive[x].Width:=Form1.DBGrid1.Columns[x].Width;
// labelmassive[x].Frame.DrawRight:=true;
if x>0 then LabelMassive[x].Left:=trunc(quickrep1.Width/(Form1.DBGrid1.Columns.Count+1))+LabelMassive[x-1].Left+labelmassive[x-1].width-LabelMassive[x].Width
else LabelMassive[x].Left:=trunc(quickrep1.Width/(Form1.DBGrid1.Columns.Count+1))-LabelMassive[x].Width;
for x:=0 to Form1.DBGrid1.Columns.Count-1 do begin
TextMassive[x]:=TQRDBtext.Create(form2);
TextMassive[x].Parent:=Detailband1;
TextMassive[x].DataSet:=Form1.MyQuery1;
TextMassive[x].DataField:=Form1.DBGrid1.Columns[x].FieldName;
TextMassive[x].Top:=trunc(detailband1.Height/2);
Textmassive[x].Width:=Form1.DBGrid1.Columns[x].Width;
// textmassive[x].Frame.DrawRight:=true;
if x>0 then textMassive[x].Left:=trunc(quickrep1.Width/(Form1.DBGrid1.Columns.Count+1))+textMassive[x-1].Left+textmassive[x-1].width-textMassive[x].Width
else textMassive[x].Left:=trunc(quickrep1.Width/(Form1.DBGrid1.Columns.Count+1))-textMassive[x].Width;
procedure TForm2.Button3Click(Sender: TObject);
for x:=0 to Form1.DBGrid1.Columns.Count-1 do begin

Название: Создание базы данных "Wc3 Cybersport Data Base"
Раздел: Рефераты по информатике, программированию
Тип: курсовая работа
Добавлен 15:52:31 17 января 2010 Похожие работы
Просмотров: 45
Комментариев: 15
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Курсовая работа: Создание базы данных "Wc3 Cybersport Data Base"
Направления Всероссийского Сочинения
Курсовая работа: Гражданское общество: понятие, структура, основные признаки
Муханова Наталья Владимировна Диссертация
Реферат На Тему Комунальні Проблеми. Сутність Проблеми Вивезення Сміття Та Її Правове Підґрунтя
Контрольная Работа На Тему Роль Малого Бизнеса В Развитии Сферы Услуг
Реферат: Судово-облікова експертиза
Доклад: Особенности национального поцелуя
Курсовая работа по теме Types of subordinate clauses in the English language
Курсовая работа по теме Туристские ресурсы Селигерского края
История развития генетики. Вклад русских ученых
Курсовая работа по теме Технология изготовления схемы интегрального усилителя
Курсовая работа по теме Методика аудиторской проверки учета кредитов и займов
Курсовая работа по теме Функционирование системы местного управления
Реферат: Оценка риска здоровью населения г. Салехарда в связи с химическим составом питьевой воды
Физика 8 Контрольная Работа Световые Явления
Бухгалтерский Учет В Системе Управления Организацией Курсовая
Сочинение Рассказ Клякса Носова
Курсовая работа по теме Избирательные споры
Лекция по теме Психологические аспекты политического лидерства
Crm Системы Реферат
Реферат: Социальная компетентность в деловых отношениях
Дипломная работа: Деятельность банка по привлечению денежных средств юридических лиц
Доклад: Действие лекарств на сексуальную функцию мужчины

Report Page