17319

Компонентне програмування – робота з обєктами БД

Лабораторная работа

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

Лабораторна робота 5 Компонентне програмування – робота з об'єктами БД. Мета роботи: 1. Розробка інформаційної моделі схеми бази даних 2. Відображення даних із зв'язаних таблиць 1. Розробка інформаційної моделі схеми бази даних Розробка діаграми дозволяє візуа...

Украинкский

2013-06-30

1.17 MB

2 чел.

Лабораторна робота 5

Компонентне програмування – робота з об'єктами БД. 

Мета роботи:

1. Розробка інформаційної моделі (схеми бази даних)

2. Відображення даних із зв'язаних таблиць

1. Розробка інформаційної моделі (схеми бази даних)

Розробка діаграми дозволяє візуальними засобами встановити зв'язки між таблицями, а також створити самі таблиці.

Команди роботи з даними зосереджені в пункті меню Data головного меню Visual Studio.

Створення нової діаграми виконується у вікні ServerExplorer.  Для цього потрібно вибрати команду AddNewDiagram з контекстного меню, або відповідну команду з меню Data.

Якщо таблиці вже створені, буде виведено вікно для вибору таблиць, розміщуваних на діаграмі.  Потрібно вибрати потрібні таблиці.  Якщо потім потрібно додати ще таблицю, це легко буде зробити. Для додавання і створення таблиць потрібно вибрати відповідну команду з контекстного меню.

У вікні побудові діаграм над вибраною таблицею можна виконувати різні дії (видалити з діаграми, з бази даних, встановити зв'язки, тощо).

Встановлення зв'язків між таблицями (зовнішніх ключів).

Створену діаграму через  буфер обміну можна вставити в документацію на систему.

Схема БД DiplomMagistr

Як  видно з діаграми, таблиця Student  не використовується і її можна видалити. Прізвище студента вказується прямо в таблиці Diplom_Thema.

2. Відображення даних із зв'язаних таблиць

Створимо рішення типу Windows Application з назвою DiplomThemes. Розмістимо на формі об'єкт TabControl.  Через властивість TabPage об'єкту додамо ще одну закладку і призначимо назви закладкам.

На першій закладці розмістимо об'єкт  ComboBox, в який виведемо список груп з таблиці Group і об'єкт  dataGridView, в який будемо виводити теми робіт по кожній групі з таблиці Diplom_Thema. Такий спосіб відображення називають "майстер-деталь".

Для двох таблиць нам потрібно два провайдери (адаптери) даних  і два набори даних.  Розмістимо їх на формі  та зв'яжемо з потрібними таблицями в базі даних Diplom_Magistr.

Створення набору даних для першої таблиці

1. Розмістимо на формі sqlDataAdapter1

2. Виберемо базу даних, налаштуємо адаптер тільки на читання і перейдемо у вікно побудови запиту (кнопка QueryBuilder)

3. У вікна Add Table виберемо таблицю Group і натиснемо кнопку Add

 

4. Виберемо поле GroupID  задамо сортування в порядку збільшення.

5. Створимо набір даних DataSet1. Для цього виділимо адаптер sqlDataAdapter1 і командою з контекстного меню Data/Generate Dataset 

створимо для нього клас DataSet1 і об'єкт набору даних з ім'ям dataSet11.

Створення набору даних для другої таблиці

1. Розмістимо на формі sqlDataAdapter2

2. Виберемо базу даних і перейдемо у вікно побудови запиту (кнопка QueryBuilder)

3. У вікна Add Table виберемо таблицю Diplom_Thema  і натиснемо кнопку Add.  У вікні Query Builder налаштуємо Select  на передачу параметра по полю GroupID. Додамо таблицю professor  для вибору прізвища керівника роботи. У результаті буде згенеровано такий оператор Select:

4.Створимо новий набір даних DataSet21 для цього адаптера.

Розмістимо на формі об'єкт DataGrid

5. Зв'яжемо набір даних dataSet11 з ComboBox1, а dataSet21 з dataGridView1.

Для цього потрібно налаштувати їхні властивості DataSource .

Для об'єкту ComboBox1

 

Для dataGridView:

Створимо для форми Form1 обробник події Load, а для ComboBox - обробник події SelectedIndexChanged.

namespace DiplomThemes

{

   public partial class Form1 : Form

   {

       public Form1()

       {

           InitializeComponent();

       }

       private void Form1_Load(object sender, EventArgs e)

       {

           sqlDataAdapter1.Fill(dataSet11);

           RefreshTable();

       }

       private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)

       {

           // Заполнить dataSet21 и связанный с ним DataGrid данными связанной таблицы

 

           RefreshTable();

        }

       private void RefreshTable()

       {

           // Заполнить dataSet21 и связанный с ним DataGrid данными

           // таблицы Orders - Заказы для выбранного Заказчика

           dataSet21.Clear();

           // Если выбран Заказчик в ComboBox

           if (comboBox1.SelectedIndex != -1)

           {

               sqlDataAdapter2.SelectCommand.Parameters[0].Value =

                   comboBox1.SelectedValue;

              sqlDataAdapter2.Fill(dataSet21);

           }

       }

   }

}

Завдання для самостійного виконання:

1. Виконати приклад, наведений в цій роботі.

2. Реалізувати на закладці 2 можливість додавання нової теми.

3. Реалізувати на закладці 3 можливість  перегляду даних про керівників, видалення, оновлення та додавання керівників.

4. Реалізувати на закладці 4 можливість додавання, оновлення і видалення груп.

5. Для свого варіанту завдання (Лаб 2) додати  1 зв 'язану таблицю і реалізувати програму для роботи з даними.

Структура БД Diplom_Magistr

Diplom_Thema

Group

Kafedra

professor


 

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

34558. Молодежная проблематика в современной литературе (Д. Селинджер, Д. Осборн, Р. Мерль и др.) 18.16 KB
  стал неоднозанчный образ главного героя – Холдена Колфилда. Возраст героя выбран С. В образе героя причудливо переплетаются жизненная мудрость и инфантилизм. Окружающую действительность он воспринимает через соотнесение с идеалом которым для героя является свобода.
34559. Проза французского Сопротивления 19.28 KB
  Арагона сбки Нож в сердце 1941 Глаза Эльзы 1942 Паноптикум 1943 Французская заря 1945 в стихах других поэтовкоммунистов Л. Арагон Ф. За порчу сукна штраф 200 франков 1945 Арагона К. Луи Арагон 18971982 начинает свою литературную деятельность в 1917 году а после возвращения с фронта примыкает к дадаистам сборник стихов Фейерверк 1920.
34560. Экзистенциализм во французской литературе. Его влияние на литературный процесс. Спор Сартра и Камю 15.46 KB
  Спор Сартра и Камю. Хотите философствовать пишите романы рекомендовал соотечественникам Альбер Камю. Спор Камю с Сартром не менее важен. В отличие от Сартра изображающего человеческую сущность чистой возможностью Камю считает что бытие человека изначально определено человеческой природой и содержит в себе набор возможностей ограничивающих человеческую свободу.
34561. Драматургия французского экзистенциализма, ее идейные и стилевые особенности (Ж. Ануй, Ж. П. Сартр, А. Камю) 19.51 KB
  Камю. Все дозволено Ивана Карамазова единственное выражение свободы писал Альбер Камю 1913 1960. С юности Камю зачитывался Достоевским Ницше Мальро. Мысли об абсурде абсурд царит о всевластии смерти познание себя познание смерти ощущение одиночества и отчуждения от омерзительного внешнего мира все мне чуждо постоянны и неизменны в эссеистике прозе и драматургии Камю.
34562. Сюжет и герой романа А. Камю («Посторонний», «Чума») 18.47 KB
  Мерсо взрывается выкрикивает что всю жизнь ощущал дыхание мрака смерти. Гораздо больше Мерсо любит природу особенно море. Суд над Мерсо. Те кто судят Мерсо продолжают верить что бытие изначально имеет высший позитивный смысл.
34563. Конфликт в романе Сартра «Тошнота» 18.68 KB
  И он решает что будет описывать и исследовать состояния мира разумеется как они даны преобразованы его Рокантена сознанием а еще более сами эти состояния сознания. Но если Гуссерль выделяет описывает феномены сознания чтобы зафиксировать их безличные всеобщие структуры то Сартр в духе Ясперса Хайдеггера Марселя использует описание феноменов сознания для анализа таких экзистенциальных состояний как одиночество страх отчаяние отвращение и других поистине трагических мироощущений личности. Существовать значит сознавать...
34564. «Театр абсурда»(С.Беккет , Э.Ионеско) 18.84 KB
  Наиболее полно принципы абсурдизма были воплощены в драмах Лысая певица L cnttrice chuve 1950 драматурга Эжена Ионеско и В ожидании Годо Сэмюэла Беккета. Эжен Ионеско зачинатель абсурдизма во французской драматургии. Сюрреализм пьес Ионеско ведет свое происхождение от цирковой клоунады фильмов Ч. Ионеско отвергает но пьесы были вызваны к жизни глубокой тревогой за судьбы языка и его носителей.
34565. «Новый роман». Смысл названия А. Роб-Грийе «В лабиринте» 18.03 KB
  Исходный замысел – показать вещи такими какими они есть на самом деле. Мы не видим сами вещи они в идеологическом ряду. Автор стремится осовободить вещи от человеческой перспективы но быстро понимает что всерьез это сделать невозможно. Человеческое видение нагружает мир смыслами от него и пытается освободить вещи продолжает мощную модернистскую установку.
34566. Влияние идей структурализма, постструктурализма и постмодернизма на развитие послевоенной французской литературы 19.27 KB
  Барт различает не письмо и текст литературное произведение которое было основой классики. Текст вторичен соткан из цитат и многозначен. В тексте принципиально важна интертекстуальность. Барт: каждый текст является интертекстомпредставляет собой новую ткань сотканную из старых цитат.