17316

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

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

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

Лабораторна робота 3. Візуальне програмування – робота з БД Компонентне програмування – робота з об'єктами БД. 2 год Мета роботи: Зв'язування даних з елементами управління ListBox і TextBox У палітрі компонентів Toolbox відкрийте вкладку Data і перетягніть на форму компонент...

Украинкский

2013-06-30

215.38 KB

1 чел.

Лабораторна робота 3. Візуальне програмування – робота з БД Компонентне програмування – робота з об'єктами БД. (2 год)

Мета роботи:

Зв'язування даних з елементами управління ListBox і TextBox

  1.  У палітрі компонентів Toolbox відкрийте вкладку Data і перетягніть  на форму компонент sqlDataAdapter. Якщо в налаштуваннях проекту такого компонента не виявиться, то клацніть на вкладці Data палітри Toolbox правою кнопкою миші і підключіть цей компонент командою Choose Items
  2.  У вікні майстра налаштування постачальника клацніть по кнопці New Connection і виберіть потрібний файл БД
  3.  Тут в текстовому полі пропонується вказати SQL-запит, який постачальник даних повинен виконувати за замовчанням при заповненні набору даних DataSet.
  4.  Клацніть на кнопці Query Builder, в діалоговому вікні Add Table виберіть із списку таблицю і по клацанню на кнопці Add вкладки Tables (потім на Close) відзначте в інтерфейсі прапорці проти потрібних полів таблиці, аби майстер написав для них текст запиту
  5.  Клацніть на кнопці OK вікна Query Builder і текст запиту буде поміщений в поле майстра

  1.  Нам буде потрібно лише читання даних, тому інші можливості потрібно відключити клацанням на кнопці Advanced Options, скинувши непотрібні прапорці

Слідуйте за вказівками майстра.

  1.  Клацніть на кнопці Finish, щоб завершити створення і налаштування об'єктів постачальника даних (екземплярів sqlDataAdapter і sqlConnection) і зберегти параметри в налаштунках проекту
  2.  У панелі Solution Explorer відкрийте файл Form1.Designer.cs і переконайтеся, що майстер створив необхідний код з налаштуваннями постачальника, до складу якого входять екземпляри класів sqlCommand, sqlDataAdapter і sqlDbConnection

Описану процедуру можна в будь-якому місці перервати клацанням на кнопці Cancel майстра налаштувань і повернутися до неї у будь-який час. Для цього досить клацнути в нижній частині робочої області на екземплярі класу sqlDataAdapter правою кнопкою миші і виконати команду Configure Data Adapter (або виділити об'єкт постачальника і виконати ту ж команду через пункт Data головного меню)

Отже, у нас є об'єкт з'єднання з БД і об'єкт-посередник між базою і набором даних (кешем оперативної пам'яті), який повинен виконувати команди SQL і управляти потоками даних. Тепер потрібно створити сам набір даних як екземпляр класу DataSet.

  1.  Клацніть правою кнопкою миші на екземплярі sqlDataAdapter1 в нижній частині робочої області і виконайте команду Generate DataSet (те ж саме можна виконати через меню Data)

У вікні майстра Generate DataSet, що з'явилося, клацніть на кнопці OK

Буде створений об'єкт набору даних dataSet11, який завантажуватиме два стовпці таблиці Student згідно SQL-запиту, вказаного в налаштуваннях постачальника sqlDataAdapter1.

Для відображення набору даних об'єкту dataSet11 застосуємо список ListBox.

  1.  Помістіть на форму з вкладки Common Controls палітри компонентів екземпляр компоненту ListBox.
  2.  Налаштуйте список за допомогою вікна властивостей таким чином:

Клацніть властивість DataSource, виберіть папку Other Data Sources, з джерел даних проекту виберіть таблицю Student

Властивості DisplayMember  призначте поле  St_Name.

Параметризовані запити

Використання декількох постачальників і декілька наборів  даних

Додамо ще по одному екземпляру класів sqlDataAdapter і DataSet. Для них ми сформуємо SQL-команду, яка вибиратиме з джерела один запис таблиці, відповідний виділеному в списку ListBox конкретному студенту за його номером.  Значення полів цього запису будемо відображати в текстових полях форми.

Додавання і налаштування постачальника даних

  1.  Перейдіть в режим View Designer і помістіть на форму ще один компонент sqlDataAdapter з іменем sqlDataAdapter2,
  2.  У майстрі налаштувань адаптера Data Adapter Configuration Wizard перейдіть на вкладку Generate the SQL statements, клацніть на кнопці Advanced Options і скиньте всі прапорці вкладки Advanced Options, оскільки постачальник лише читатиме дані
  3.  Клацніть на кнопці Query Builder, у вікні, що з'явилося, виберіть потрібну таблицю і клацніть один раз на кнопці Add, а потім - Close
  4.  У списку, що з'явився відзначте прапорці проти кожного поля, з яких повинен читати дані адаптер даних
  5.  У поле Filter рядка Student_ID введіть =?, після чого в третій секції буде згенерована команда SELECT

Завершіть роботу майстра.

Тепер потрібно створити пов'язаний з постачальником об'єкт набору даних DataSet, який зберігатиме дані таблиці Customers. Цей набір даних має бути узгоджений по структурі з налаштуваннями постачальника, тому створимо його за допомогою майстра. У панелі Solution Explorer зверніть увагу, що доки на формі  присутній лише один вузол DataSet1.xsd, який був створений майстром на попередніх етапах виконання роботи і який описує клас набору даних, відповідний зберіганню значень лише двох полей таблиці Student. Зараз створимо ще один такий вузол.

  1.  Клацніть правою кнопкою миші на об'єкті sqlDataAdapter2, виконайте команду Generate DataSet контекстного меню (або в Data головного меню проекту) і налаштуйте однойменне вікно майстра

Зв'язування елементів форми з набором даних

Приєднаємо до об'єкту listBox і поле Student_ID, значення якого заповнюватимуться в колекцію Items списку. Ця колекція не буде видна користувачу, але значення її будь-якого елементу завжди можна отримати для виділеного рядка списку і надалі використовувати як параметр в команді другого постачальника.

  1.  Виділіть на формі об'єкт listBox і встановіть його властивість ValueMember в значення Student.Student_ID  через список, що розкривається

Згенеруйте обробник  listBox1_SelectedIndexChanged  подвійним клацанням на списку і додайте в нього код

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)

       {

           // Очистить второй набор данных

           dataSet21.Clear();

           // Если выбран элемент списка, заполнить второй набор

           if (listBox1.SelectedIndex != -1)

           {

               sqlSelectCommand2.Parameters[0].Value = listBox1.SelectedValue;

               sqlDataAdapter2.Fill(dataSet21);

           }

       }

Зв'язування набору даних з текстовими полями

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

По черзі виділіть кожне текстове поле, в панелі Properties розкрійте його властивість (DataBindings).Text і приєднайте відповідне поле з другого набору даних

Виконайте збірку рішення і запустіть його на виконання. Результат роботи:


 

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

84427. Управление рыночной экономикой 81.9 KB
  На какой бы ступени исторического развития ни находилось человеческое общество, люди, чтобы жить, должны иметь пищу, одежду, жилищные и другие материальные блага. Необходимые человеку средства существования должны быть произведены. Их изготовление совершается в процессе производства.
84429. Аудит и ревизия формирования и использования прибыли 82.06 KB
  Таким образом, актуальность курсовой работы заключается в эффективном финансовом росте и развитии предприятий в следствии правильного управления прибылью. Целью курсовой работы является оценка формирования и использования прибыли.
84430. Доверенность в гражданском праве 47.16 KB
  Полномочие представителя может основываться на доверенности законе например право родителей выступать от имени своих несовершеннолетних детей опекунов от имени подотчетных в качестве из законных представителей административном акте например приказ о назначении на должность продавца кассира...
84431. Оценка эффективности привлечения заемного капитала при инвестировании бизнес-центра «Первая Башня» 395.95 KB
  Целью курсовой работы является определение целесообразности приобретения инвестором доходной недвижимости. Для этого определяется предполагаемая доходность объекта и целесообразность привлечения заемного капитала.
84434. Методические указания: Основы управления персоналом 221 KB
  Целью курсовой работы является дальнейшее углубление и специализация знаний и навыков студентов в управлении персоналом в поэлементном, функциональном и объектном разрезах в условиях практического решения реальных проблем.