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 і приєднайте відповідне поле з другого набору даних

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


 

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

75001. Мова - коштовний скарб народу 55.5 KB
  Мова коштовний скарб народу Мета: виховувати любов до рідного слова вчити бачити красу рідної мови познайомити з найголовнішими етапами розвитку рідної мови розвивати виразність декламування поезії збагачувати й активізува ти словниковий запас учнів...
75002. Наше диво, калинове, кохана українська мово. Літературн-омузичне свято до Дня української мови й й писемності 71 KB
  Мова кожного народу Неповторна і своя В ній гримлять громи в негоду В тиші трелі соловя. Берегти її плекати Буду всюди й повсякчас Бо ж єдина такяк мати Мова в кожного із нас В. Ведуча Скарбе мій єдиний Ведучий Це сьогодні на твою честь ми проводимо свято НАШЕ ДИВО КАЛИНОВЕ КОХАНА УКРАЇНСЬКА МОВО Виконання...
75003. Сценарій свята до Дня української писемності та мови 88 KB
  Найбільше і найдорожче добро в кожного народу це його мова ота жива схованка живого духу його багата скарбниця в яку народ складає і своє давнє життя і свої сподівання розум досвід почування. Українська мова в багатстві витонченості й гнучкості не поступається ані жодній із сучасних літературних мов словянства. З епохи Київської Русі можна говорити й про українську літературну мову та жива розмовна мова українського народу набагато давніша.
75004. Мова моя українська. Методична розробка виховного заходу для старшокласників 85.5 KB
  Мова це великий дар природи. І серед них ніби запашна квітка в чудовому букеті українська мова. У рідному домі завжди звучить найближча найзрозуміліша рідна мова бо бринить вона із ласкавих бабусиних вуст із дідусевої говірки із маминої пісні із батьківського слова часом суворого а часом жартівливого. Наша мова українська тому що наша земля Україна.
75005. Мова наша солов’їна, виховний захід 58 KB
  Показати дітям красу і багатство української мови за допомогою народної творчості, творів письменників і поетів. Викликати бажання вивчати рідну мову, милуватися її красою Виховувати любов до рідної мови, до своєї землі, свого народу.
75006. Мова моя українська чарівна. Виховний захід 40.5 KB
  Обладнання: зал прикрашений плакатами з крилатими висловами про мову прислівями плакати з назвами команд завдання загадки ребуси кросворди. І будемо зараз готові Полинути в країну рідного слова...
75007. Мово моя материнська, Сценарій свята 52 KB
  Чудова наша мова міцне моє коріння А як же я без нього могла б на світі жить Тоді б мене чекало духовне зубожіння Бо мову і Вітчизну не можна розділить Пісня О мово моя муз. Мов соловї наша мова співуча. Вірте не вірте Твердо я знаю: Мова це вірність рідному краю...
75008. Хімічна мозаїка, Сценарій з хімії 61 KB
  Ведуча: Вогонь у темряву ночей Приніс на землю Прометей. Ведуча доторкаючись до вогню: Я стверджую категорично: Реакція екзотермічна дує на палець. Ведуча звертається до кухаря: За сіль ви не забули друже Її відсутність не байдужа...
75009. Музыкальный тайник, внеклассное мероприятие для 7 класса 199 KB
  Мотивация интереса к непопулярным» музыкальным жанрам; пробуждение у учащихся заинтересованность в изучении предмета; активизация мыслительной и речевой деятельности; развитие музыкальной эрудиции, логического мышления; воспитание музыкально-познавательных потребностей и интересов в приобретении основы музыкально – исторических знаний, лидерских и коммуникативных качеств личности.