Разработка СУБД для управления деятельностью по поставкам и реализации ювелирных изделий

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

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

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

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

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • Анализ предметной области
  • 1. Разработка модели данных
  • 2. Разработка интерфейса пользователя
  • 3. Отладка, анализ результатов
  • Заключение
  • Список использованных источников
  • Приложения

Введение

В современном мире ни одно предприятие не обходится без использования баз данных. Они являются удобным средством хранения информации о видах продукции, клиентах, поставщиках, работниках и т.д.

В связи с этим, в области разработки программного обеспечения выделяют отдельное направление - проектирование баз данных.

На ранних этапах развития этого направления вся ответственность за целостность хранимых данных, защиту от несанкционированного доступа к ним, добавление новых данных или обновления существующих возлагалась на программиста. Однако впоследствии стали создаваться специальные программные комплексы, способные решать эти задачи самостоятельно.

Системой управления базами данных называют программную систему, предназначенную для создания на ЭВМ общей базы данных, используемой для решения множества задач. Подобные системы служат для поддержания базы данных в актуальном состоянии и обеспечивают эффективный доступ пользователей к содержащимся в ней данным в рамках предоставленных пользователям полномочий.

СУБД предназначена для централизованного управления базой данных в интересах всех работающих в этой системе.

По степени универсальности различают два класса СУБД:

системы общего назначения;

специализированные системы.

Специализированные СУБД создаются в редких случаях при невозможности или нецелесообразности использования СУБД общего назначения. [2]

СУБД общего назначения - это сложные программные комплексы, предназначенные для выполнения всей совокупности функций, связанных с созданием и эксплуатацией базы данных информационной системы. [4]

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

СУБД, ориентированные на разработчиков, обладают развитыми средствами для создания приложений. К элементам инструментария разработки приложений можно отнести:

мощные языки программирования;

средства реализации меню, экранных форм ввода-вывода данных и генерации отчетов;

средства генерации приложений (прикладных программ);

генерацию исполнимых файлов.

Функциональные возможности моделей данных доступны пользователю СУБД благодаря ее языковым средствам. [2]

Реализация языковых средств интерфейсов может быть осуществлена различными способами. Для высококвалифицированных пользователей (разработчиков сложных прикладных систем) языковые средства чаще всего представляются в их явной синтаксической форме. В других случаях функции языков могут быть доступны косвенным образом, когда они реализуются в форме различного рода меню, диалоговых сценариев или заполняемых пользователем таблиц. По таким входным данным интерфейсные средства формируют адекватные синтаксические конструкции языка интерфейса и передают их на исполнение или включают в генерируемый программный код приложения. Интерфейсы с неявным использованием языка широко используются в СУБД для персональных ЭВМ. [4]

Анализ предметной области

Рассмотрим следующую предметную область: поставка и реализация ювелирных изделий.

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

1. Разработка модели данных

В предыдущем пункте была проанализирована предметная область и выделены сущности для проектирования базы данных. Теперь рассмотрим структуру таблиц, описывающих эти сущности, и разработаем модель данных "сущность-связь".

В таблице "Продукция" должны содержаться поля:

Идентификатор продукции;

Имя продукции;

Идентификатор поставщика;

Идентификатор производителя;

Цена продукции;

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

В таблице "Магазины" будут поля: "Идентификатор магазина" как первичный ключ и "Имя магазина". В нее должен входить внешний ключ из таблицы "Shop_ex".

В таблицах "Поставщики" и "Производители" будут такие поля как "Имя" и "Идентификатор". В них должны входить внешние ключи из таблицы "Продукция".

Рассмотрим таблицы "Металлы", "Камни" и "Типы". В них должны входить внешние ключи из таблицы "Type_ex" и иметь следующие поля: "Идентификатор" и "Имя".

После определения типов данных физическая и логическая модели будут выглядеть следующим образом:

управление база интерфейс пользователь

Рис.1. Логическая модель базы данных

Рис.2. Физическая модель базы данных

2. Разработка интерфейса пользователя

Интерфейс пользователя разработан на языке С#. Работа с пользователем происходит следующим образом. Пользователь загружает приложение и на экран выводится окно авторизации, в котором можно ввести имя пользователя, пароль доступа к базе данных и IP-адрес сервера MySQL, на котором хранится база данных (см. рис.3).

Рис.3. Вкладка авторизации

После нажатия на кнопку "Подключиться" производится обращение к БД. В случае правильного ввода логина и пароля, появляется сообщение "Подключение произошло успешно!!!", что означает о разрешении дальнейшей работы.

После корректного подключения переходим ко вкладке "Представления".

На этой странице можно просмотреть все имеющиеся представления (см. рис.4).

Рис.4. Просмотр представлений

На вкладке "Продукция" можно просмотреть данные о типе, поставщиках и производителях продукции, а также добавить или удалить данные из таблицы "Продукция" (см. рис.4).

Рис.4. Вкладка "Продукция"

Для удаления данных необходимо указать идентификатор продукта и нажать кнопку "Удалить".

Аналогичным образом происходит добавление или удаление записей в других таблицах.

Во вкладке "Хранимая процедура" отображён пример работы с хранимыми процедурами. (см. рис.6)

Рис.6. Пример работы хранимой процедуры

3. Отладка, анализ результатов

В ходе данной рабы возникало множество проблем с приведением типов, что отобразилось на скорости выполнения работы.

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

Все эти факторы повлияли на результат выполнения работы и на ее качество. Приложение нельзя назвать завершенным, можно лишь сказать, что оно положило начало программированию на С# для автора этой работы.

Заключение

В результате проделанной работы получилась реляционная база данных, поддерживаемая СУБД MySQL, в которой содержится 10 таблиц, 2 представления, 1 хранимая процедура (см. приложение 1). В этих таблицах содержатся сведения о сущностях предметной области "Поставка и реализация ювелирных изделий": продукции, магазинах, клиентах, поставщиках, производителях и т.д. В каждой из этих таблиц содержится некоторое количество записей, необходимых для проверки работоспособности приложения, разработанного на С# специально для администрирования созданной базы данных.

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

На текущий момент эта цель достигнута, поэтому выполнение данной работы завершено.

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

Агуров П.В. С#. Разработка компонентов в MS Visual Studio 2005/2008,-СПб.: БХВ-Петербург, 2008. - 480с.: ил.

Астахова И.Ф. SQL в примерах и задачах: Учеб. Пособие / И.Ф. Астахова, А.П. Толстобров, В.М. Мельников. - Мн.: Новое знание, 2002. - 176 с.

Ватсон Карли. С# Wrox Press Ltd. Arden House, 1102 Warwick Road, Acocks Green, Birmingham, B27 6 BH, UK 2001. - 879c.: ил.

Моисеенко С.И. SQL. Задачи и решения. - СПб.: Питер, 2006. - 256сю: ил.

Павловская Т.А. C#. Программирование на я зыке высокого уровня. Учебник для вузов. - СПб.: Питер, 2007-432с.: ил

Приложения

Приложение 1

Дамп базы данных

/*

MySQL Data Transfer

Source Host: localhost

Source Database: kurs

Target Host: localhost

Target Database: kurs

Date: 29.12.2008 9: 48: 14

*/

SET FOREIGN_KEY_CHECKS=0;

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

Table structure for clients

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

DROP TABLE IF EXISTS `clients`;

CREATE TABLE `clients` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Shop_ex_ID` int (11) DEFAULT NULL,

`Name_client` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `FK_1` (`Shop_ex_ID`),

CONSTRAINT `FK_1` FOREIGN KEY (`Shop_ex_ID`) REFERENCES `shop_ex` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=koi8r;

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

Table structure for manufacturer

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

DROP TABLE IF EXISTS `manufacturer`;

CREATE TABLE `manufacturer` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_manufacturer` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=koi8r;

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

Table structure for metall

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

DROP TABLE IF EXISTS `metall`;

CREATE TABLE `metall` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_metall` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=koi8r;

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

Table structure for production

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

DROP TABLE IF EXISTS `production`;

CREATE TABLE `production` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name` varchar (20) DEFAULT NULL,

`Type_ex_ID` int (11) DEFAULT NULL,

`ID_supplier` int (11) DEFAULT NULL,

`ID_manufacturer` int (11) DEFAULT NULL,

`Price` int (11) DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `FK_7` (`Type_ex_ID`),

KEY `FK_8` (`ID_supplier`),

KEY `FK_10` (`ID_manufacturer`),

CONSTRAINT `FK_8` FOREIGN KEY (`ID_supplier`) REFERENCES `suppliers` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE,

CONSTRAINT `FK_10` FOREIGN KEY (`ID_manufacturer`) REFERENCES `manufacturer` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE,

CONSTRAINT `FK_7` FOREIGN KEY (`Type_ex_ID`) REFERENCES `type_ex` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=koi8r;

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

Table structure for shop

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

DROP TABLE IF EXISTS `shop`;

CREATE TABLE `shop` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_shop` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=koi8r;

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

Table structure for shop_ex

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

DROP TABLE IF EXISTS `shop_ex`;

CREATE TABLE `shop_ex` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Shop_ID` int (11) DEFAULT NULL,

`Production_ID` int (11) DEFAULT NULL,

`Comments` varchar (50) DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `FK_2` (`Shop_ID`),

KEY `FK_3` (`Production_ID`),

CONSTRAINT `FK_3` FOREIGN KEY (`Production_ID`) REFERENCES `production` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `FK_2` FOREIGN KEY (`Shop_ID`) REFERENCES `shop` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=koi8r;

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

Table structure for stone

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

DROP TABLE IF EXISTS `stone`;

CREATE TABLE `stone` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_stone` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=koi8r;

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

Table structure for suppliers

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

DROP TABLE IF EXISTS `suppliers`;

CREATE TABLE `suppliers` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_suppliers` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=koi8r;

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

Table structure for test

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

DROP TABLE IF EXISTS `test`;

CREATE TABLE `test` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`ts` int (11) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1;

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

Table structure for type

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

DROP TABLE IF EXISTS `type`;

CREATE TABLE `type` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Name_type` varchar (20) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=koi8r;

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

Table structure for type_ex

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

DROP TABLE IF EXISTS `type_ex`;

CREATE TABLE `type_ex` (

`ID` int (11) NOT NULL AUTO_INCREMENT,

`Type_ID` int (11) DEFAULT NULL,

`Metall_ID` int (11) DEFAULT NULL,

`Metall_weight` int (11) DEFAULT NULL,

`Stone_ID` int (11) DEFAULT NULL,

`Stone_weight` int (11) DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `FK_4` (`Type_ID`),

KEY `FK_5` (`Metall_ID`),

KEY `FK_6` (`Stone_ID`),

CONSTRAINT `FK_6` FOREIGN KEY (`Stone_ID`) REFERENCES `stone` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE,

CONSTRAINT `FK_4` FOREIGN KEY (`Type_ID`) REFERENCES `type` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE,

CONSTRAINT `FK_5` FOREIGN KEY (`Metall_ID`) REFERENCES `metall` (`ID`) ON DELETE SET NULL ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=koi8r;

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

View structure for v_prod

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

DROP VIEW IF EXISTS `v_prod`;

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `v_prod` AS select `production`. `ID` AS `ID`,`production`. `Name` AS `Name`,`manufacturer`. `Name_manufacturer` AS `Name_manufacturer`,`metall`. `Name_metall` AS `Name_metall`,`type_ex`. `Metall_weight` AS `Metall_weight`,`stone`. `Name_stone` AS `Name_stone`,`type_ex`. `Stone_weight` AS `Stone_weight`,`suppliers`. `Name_suppliers` AS `Name_suppliers`,`type`. `Name_type` AS `Name_type` from ( ( ( ( ( (`production` join `manufacturer`) join `suppliers`) join `type_ex`) join `type`) join `metall`) join `stone`) where ( (`production`. `Type_ex_ID` = `type_ex`. `ID`) and (`production`. `ID_supplier` = `suppliers`. `ID`) and (`production`. `ID_manufacturer` = `manufacturer`. `ID`) and (`type_ex`. `Type_ID` = `type`. `ID`) and (`type_ex`. `Metall_ID` = `metall`. `ID`) and (`type_ex`. `Stone_ID` = `stone`. `ID`) and (_utf8'' = _utf8''));

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

View structure for v_shop_ex

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

DROP VIEW IF EXISTS `v_shop_ex`;

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `v_shop_ex` AS select `shop_ex`. `ID` AS `ID`,`shop`. `Name_shop` AS `Name_shop`,`production`. `Name` AS `Name`,`production`. `Price` AS `Price` from ( (`shop_ex` join `shop`) join `production`) where ( (`shop_ex`. `Shop_ID` = `shop`. `ID`) and (`production`. `ID` = `shop_ex`. `Production_ID`)) order by `shop`. `Name_shop`;

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

Procedure structure for Stored_pr

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

DROP PROCEDURE IF EXISTS `Stored_pr`;

DELIMITER;;

CREATE DEFINER=`root`@`localhost` PROCEDURE `Stored_pr` ()

BEGIN

declare p1 INT DEFAULT 0;

SELECT production. ID into p1 FROM production where production. Price= 1500;

insert into test (ts) values (p1);

END;;

DELIMITER;

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

Records

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

INSERT INTO `clients` VALUES ('1', null, 'Karlenok');

INSERT INTO `clients` VALUES ('2', null, 'Kozak');

INSERT INTO `clients` VALUES ('3', null, 'Sobko');

INSERT INTO `clients` VALUES ('4', null, 'Lapuhin');

INSERT INTO `manufacturer` VALUES ('1', 'ZIKO');

INSERT INTO `manufacturer` VALUES ('2', 'Bel-Zoloto');

INSERT INTO `manufacturer` VALUES ('3', 'Golden_maiden');

INSERT INTO `manufacturer` VALUES ('5', 'MegaZord');

INSERT INTO `metall` VALUES ('1', 'Р-РѕР"ото');

INSERT INTO `metall` VALUES ('2', 'Серебро');

INSERT INTO `metall` VALUES ('3', 'РџР"атина');

INSERT INTO `production` VALUES ('1', 'Ring', '1', '1', '1', '369');

INSERT INTO `production` VALUES ('2', 'Jewel', '3', '2', '3', '896');

INSERT INTO `production` VALUES ('5', 'Mega_gold', '3', '1', '2', '1500');

INSERT INTO `shop` VALUES ('1', 'ZIKO-1');

INSERT INTO `shop` VALUES ('2', 'Shop3');

INSERT INTO `shop` VALUES ('3', 'BelTrans');

INSERT INTO `shop` VALUES ('5', 'GoldenMaiden');

INSERT INTO `shop_ex` VALUES ('1', '1', '2', '4');

INSERT INTO `shop_ex` VALUES ('2', '2', '1', '4fg');

INSERT INTO `shop_ex` VALUES ('3', '1', '1', null);

INSERT INTO `shop_ex` VALUES ('4', '3', '2', null);

INSERT INTO `shop_ex` VALUES ('5', '2', '2', null);

INSERT INTO `shop_ex` VALUES ('8', '5', '5', null);

INSERT INTO `stone` VALUES ('1', 'РђР"маз');

INSERT INTO `stone` VALUES ('2', 'Р`СЂРёР"иант');

INSERT INTO `stone` VALUES ('3', 'Кремний');

INSERT INTO `suppliers` VALUES ('1', 'Finger LTD');

INSERT INTO `suppliers` VALUES ('2', 'Ribon Master');

INSERT INTO `suppliers` VALUES ('3', 'JSeven');

INSERT INTO `suppliers` VALUES ('5', 'Arm Corp');

INSERT INTO `test` VALUES ('1', '5');

INSERT INTO `test` VALUES ('2', '5');

INSERT INTO `test` VALUES ('3', '5');

INSERT INTO `test` VALUES ('4', '5');

INSERT INTO `test` VALUES ('5', '5');

INSERT INTO `test` VALUES ('6', '5');

INSERT INTO `test` VALUES ('7', '5');

INSERT INTO `test` VALUES ('8', '5');

INSERT INTO `type` VALUES ('1', 'РљРѕР"ьцо');

INSERT INTO `type` VALUES ('2', 'Серьга');

INSERT INTO `type` VALUES ('3', 'Цепочка');

INSERT INTO `type` VALUES ('5', 'Braslet');

INSERT INTO `type_ex` VALUES ('1', '1', '1', '50', '1', '50');

INSERT INTO `type_ex` VALUES ('2', '2', '2', '100', '2', '33');

INSERT INTO `type_ex` VALUES ('3', '3', '3', '45', '1', '45');

INSERT INTO `type_ex` VALUES ('4', '1', '2', '34', '3', '20');

Приложение 2

Form1. cs

using System;

using System. Collections. Generic;

using System.componentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System. Windows. Forms;

using MySql. Data. MySqlClient;

namespace Kursova9_Den

{

public partial class Form1: Form

{

Int16 x = new Int16 ();

private MySqlCommand cmd;

private DataTable data;

private MySqlDataAdapter da;

private MySqlCommandBuilder cb;

private MySqlConnection conn;

private string connStr;

public Form1 ()

{

InitializeComponent ();

}

private void button1_Click (object sender, EventArgs e)

{

connStr = String. Format ("server={0}; uid={1}; pwd={2}; database={3}",

this. textBox1. Text, this. textBox2. Text, this. maskedTextBox1. Text, this. textBox3. Text);

conn = new MySqlConnection (connStr);

try

{

conn. Open ();

MessageBox. Show ("Подключение прошло успешно!!!!", "Курсовая");

// Заполняем Вкладку Предстовления

{

String sql = "show full tables where table_type like 'VIEW'; ";

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

for (int i = 0; i < this. data. Rows. Count; i++)

{

this.comboBox1. Items. Insert (i, this. data. Rows [i]. Field<string> (0). ToString ());

}

}

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

}

private void comboBox1_SelectedIndexChanged (object sender, EventArgs e)

{

String sql = String. Format ("select * from {0}; ",this.comboBox1. Text);

// MessageBox. Show (sql);

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

Views. DataSource = data;

}

private void tabControl1_Selected (object sender, TabControlEventArgs e)

{

switch (e. TabPageIndex)

{

case 1:

{

this.comboBox1. Text = this.comboBox1. Items [0]. ToString ();

} break;

case 2:

{

// Clients

String sql = String. Format ("select * from {0};", "v_shop_ex");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

shop_ex. DataSource = data;

shop_ex. Sort (shop_ex. Columns [1], ListSortDirection. Ascending);

// Clients

sql = String. Format ("select * from {0};", "clients");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView1. DataSource = data;

} break;

case 3:

{

// Типы Продуктов

String sql = String. Format ("select * from {0};", "type");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView5. DataSource = data;

// Поставщики

sql = String. Format ("select * from {0};", "suppliers");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView3. DataSource = data;

// Производители

sql = String. Format ("select * from {0};", "manufacturer");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView2. DataSource = data;

// Продукты

sql = String. Format ("select * from {0};", "production");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView4. DataSource = data;

dataGridView4. Sort (dataGridView4. Columns [0], ListSortDirection. Ascending);

} break;

case 4:

{

String sql = String. Format ("select * from {0};", "shop");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView6. DataSource = data;

} break;

case 5:

{

String sql = String. Format ("select * from {0};", "suppliers");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView7. DataSource = data;

} break;

case 6:

{

String sql = String. Format ("select * from {0};", "manufacturer");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView8. DataSource = data;

} break;

case 7:

{

String sql = String. Format ("select * from {0};", "type");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView9. DataSource = data;

} break;

case 8:

{

// Продукты

String sql = String. Format ("select * from {0};", "v_prod");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView10. DataSource = data;

dataGridView10. Sort (dataGridView10. Columns [0], ListSortDirection. Ascending);

// Shops

sql = String. Format ("select * from {0};", "shop");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView11. DataSource = data;

dataGridView11. Sort (dataGridView11. Columns [0], ListSortDirection. Ascending);

// v_Shop_Ex

sql = String. Format ("select * from {0};", "v_shop_ex");

data = new DataTable ();

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView12. DataSource = data;

dataGridView12. Sort (dataGridView12. Columns [0], ListSortDirection. Ascending);

} break;

}

}

// Add

private void button3_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (shop_ex_id,name_client) values ('{2}','{1}')", "clients", textBox4. Text, textBox5. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "clients");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView1. DataSource = data;

}

// Delete

private void button2_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2}); ","clients","ID",textBox6. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "clients");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView1. DataSource = data;

}

// add prod

private void button4_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (name,type_ex_id, id_manufacturer, id_supplier,price) values ('{1}','{2}','{3}','{4}','{5}')", "production",

textBox10. Text, textBox7. Text, textBox8. Text, textBox9. Text, textBox11. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "v_prod");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView4. DataSource = data;

dataGridView4. Sort (dataGridView4. Columns [0], ListSortDirection. Ascending);

}

// Deleting prod

private void button5_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "production", "ID", textBox13. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "v_prod");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView4. DataSource = data;

dataGridView4. Sort (dataGridView4. Columns [0], ListSortDirection. Ascending);

}

// Shop Del

private void button6_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "shop", "ID", textBox14. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "shop");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView6. DataSource = data;

dataGridView6. Sort (dataGridView6. Columns [0], ListSortDirection. Ascending);

}

// Shop Add

private void button7_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (name_shop) values ('{1}')", "shop",textBox15. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "shop");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView6. DataSource = data;

dataGridView6. Sort (dataGridView6. Columns [0], ListSortDirection. Ascending);

}

// Del Postav

private void button9_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "suppliers", "ID", textBox17. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "suppliers");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView7. DataSource = data;

dataGridView7. Sort (dataGridView7. Columns [0], ListSortDirection. Ascending);

}

// Add Postav

private void button8_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (name_suppliers) values ('{1}')", "suppliers", textBox16. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "suppliers");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView7. DataSource = data;

dataGridView7. Sort (dataGridView7. Columns [0], ListSortDirection. Ascending);

}

// Del Производителя

private void button11_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "manufacturer", "ID", textBox19. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "manufacturer");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView8. DataSource = data;

dataGridView8. Sort (dataGridView8. Columns [0], ListSortDirection. Ascending);

}

// Add Производителя

private void button10_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (name_manufacturer) values ('{1}')", "manufacturer", textBox18. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "manufacturer");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView8. DataSource = data;

dataGridView8. Sort (dataGridView8. Columns [0], ListSortDirection. Ascending);

}

// Del Type

private void button13_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "type", "ID", textBox21. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "type");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView9. DataSource = data;

dataGridView9. Sort (dataGridView9. Columns [0], ListSortDirection. Ascending);

}

private void button12_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (name_type) values ('{1}')", "type", textBox20. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "type");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView9. DataSource = data;

dataGridView9. Sort (dataGridView9. Columns [0], ListSortDirection. Ascending);

}

private void button14_Click (object sender, EventArgs e)

{

data = new DataTable ();

String sql = String. Format ("delete from {0} where ({1}={2});", "shop_ex", "ID", textBox22. Text);

da = new MySqlDataAdapter (sql, conn);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

sql = String. Format ("select * from {0};", "v_shop_ex");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView12. DataSource = data;

dataGridView12. Sort (dataGridView12. Columns [0], ListSortDirection. Ascending);

}

private void button15_Click (object sender, EventArgs e)

{

String sql = String. Format ("insert into {0} (shop_id,production_id) values ('{1}','{2}')", "shop_ex", textBox23. Text, textBox24. Text);

try

{

cmd = new MySqlCommand (sql, conn);

cmd. ExecuteNonQuery ();

}

catch (Exception ex)

{

MessageBox. Show ("Exception: " + ex. Message);

}

data = new DataTable ();

sql = String. Format ("select * from {0};", "v_shop_ex");

da = new MySqlDataAdapter (sql, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView12. DataSource = data;

dataGridView12. Sort (dataGridView12. Columns [0], ListSortDirection. Ascending);

}

private void button16_Click (object sender, EventArgs e)

{

string s_test= ("call Stored_pr (); ");

da = new MySqlDataAdapter (s_test, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

data = new DataTable ();

string sql_d = "select * from kurs. test; ";

da = new MySqlDataAdapter (sql_d, connStr);

cb = new MySqlCommandBuilder (da);

da. Fill (data);

dataGridView13. DataSource = data;

}

}

}

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


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

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

    презентация [1,1 M], добавлен 09.01.2014

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

    реферат [46,4 K], добавлен 01.11.2009

  • Базы данных с двумерными файлами и реляционные системы управления базами данных (СУБД). Создание базы данных и обработка запросов к ним с помощью СУБД. Основные типы баз данных. Базовые понятия реляционных баз данных. Фундаментальные свойства отношений.

    реферат [57,1 K], добавлен 20.12.2010

  • Основные этапы проектирования базы данных. Access как система управления базами данных (СУБД), ее предназначение, отличительные возможности. Работа с таблицами, их создание и редактирование. Порядок создания запросов. Способы защиты баз данных.

    лабораторная работа [3,1 M], добавлен 18.08.2009

  • Особенности систем управления базами данных (СУБД): основные понятия, реляционные базы, основные этапы их проектирования. Концептуальная (логическая) модель БД "Экспресс поставки", её физическая модель, создание в Access и SQL запроса к БД при её работе.

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

  • Теоретические аспекты СУБД. Основные понятия. Функциональные возможности СУБД. Архитектура систем управления. Разработка базы данных. Крупные массивы данных размещают, как правило, отдельно от исполняемого программы, и организуют в виде базы данных.

    курсовая работа [30,5 K], добавлен 23.02.2006

  • Структура и функции системы управления базами данных (СУБД). Управление хранением данных и доступом к ним. Защита и поддержка целостности данных. Надежность хранения данных во внешней памяти. Классификация СУБД по способу доступа к базе данных.

    презентация [3,7 M], добавлен 05.06.2014

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

    курсовая работа [434,7 K], добавлен 20.07.2012

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

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

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

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

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