ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 27.09.2019

Просмотров: 131

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

№ 7  Ð¡Ð¾Ð·Ð´Ð°Ð½Ð¸Ðµ WPF Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð¾Ð¹ Ð´Ð°Ð½Ð½Ñ‹Ñ…  

Задание 

 

1)

 

На  Ð¾ÑÐ½Ð¾Ð²Ðµ  Ð²Ð°Ñ€Ð¸Ð°Ð½Ñ‚ов  Ð²  Ð»Ð°Ð±.  2  ÑÐ¾Ð·Ð´Ð°Ñ‚ÑŒ    Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ðµ  Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÑÑŽÑ‰ÐµÐ³Ð¾ 
функции ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð¾Ð¹ Ð´Ð°Ð½Ð½Ñ‹Ñ… Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ADO.NET (ActiveX Data 
Objects).  ÐžÐ´Ð½Ð¾  Ð¸Ð·  Ð¿Ð¾Ð»ÐµÐ¹  Ð‘Д  Ð´Ð¾Ð»Ð¶Ð½Ð¾  Ð±Ñ‹Ñ‚ÑŒ  Ð³Ñ€Ð°Ñ„ическая  Ð¸Ð½Ñ„ормация 
(фото, Ð»Ð¾Ð³Ð¾Ñ‚ип, ÐºÐ°Ñ€Ñ‚а проезда и т.п.).    

2)

 

Обеспечить  ÑÐ»ÐµÐ´ÑƒÑŽÑ‰Ð¸Ð¹  Ñ„ункционал:  Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ,  Ñ€ÐµÐ´Ð°ÐºÑ‚ирование, 
удаление и Ð¿Ñ€Ð¾ÑÐ¼Ð¾Ñ‚Ñ€ Ð·Ð°Ð¿Ð¸ÑÐµÐ¹ Ð¸Ð· базы Ð´Ð°Ð½Ð½Ñ‹Ñ…, ÑÐ¾Ñ€Ñ‚ировку.  

3)

 

Выполнение запросов Ð¸ Ð²Ñ‹Ñ…ов Ñ…ранимых Ð¿Ñ€Ð¾Ñ†ÐµÐ´ÑƒÑ€. 

4)

 

Отображайте Ð¸Ð½Ñ„ормацию Ð² Ð²Ð¸Ð´Ðµ  Ñ‚аблицы Ñ‚ипа DataGrid.  

5)

 

Должны Ð±Ñ‹Ñ‚ÑŒ ÐºÐ½Ð¾Ð¿ÐºÐ¸ Ð½Ð°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ð¸ (



 



  Ð¸ Ñ‚.п.). 

6)

 

Обязательно Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÑŒ Ð¿Ñ€Ð¸Ð²ÑÐ·ÐºÐ¸ Ð´Ð°Ð½Ð½Ñ‹Ñ… Ðº Ð­Ð£. 

7)

 

База Ð´Ð°Ð½Ð½Ñ‹Ñ… Ð¼Ð¾Ð¶ÐµÑ‚ Ð±Ñ‹Ñ‚ÑŒ Ð»ÑŽÐ±Ð°Ñ Ñ€ÐµÐ»ÑÑ†Ð¸Ð¾Ð½Ð½Ð°Ñ (SQL, MySQL, SQLite  Ð¸ 
т.п.,  Access â€“ Ð½ÐµÐ»ÑŒÐ·Ñ).  

8)

 

В  ÑÐ»ÑƒÑ‡Ð°Ðµ  ÐµÑÐ»Ð¸  Ð¿Ð¾ÑÐ»Ðµ  Ð·Ð°Ð¿ÑƒÑÐºÐ°  Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ  Ð½Ðµ  ÑƒÐ´Ð°ÐµÑ‚ся  Ð½Ð°Ð¹Ñ‚и  Ð‘Д  Ð¿Ð¾ 
указанному Ð¿ÑƒÑ‚и,  Ð¾Ð½Ð° Ð´Ð¾Ð»Ð¶Ð½Ð° ÑÐ¾Ð·Ð´Ð°Ð²Ð°Ñ‚ься Ð²Ð¾ Ð²Ñ€ÐµÐ¼Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹ 
(должны Ð±Ñ‹Ñ‚ÑŒ ÑÐºÑ€Ð¸Ð¿Ñ‚Ñ‹ создания). 

 

P.S. ÐŸÐ¾ ÑÐ¾Ð³Ð»Ð°ÑÐ¾Ð²Ð°Ð½Ð¸ÑŽ Ñ Ð¿Ñ€ÐµÐ¿Ð¾Ð´Ð°Ð²Ð°Ñ‚елем Ð´Ð»Ñ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚ки Ð¼Ð¾Ð¶Ð½Ð¾ Ð²Ð·ÑÑ‚ÑŒ 

базу данных из ÐºÑƒÑ€ÑÐ¾Ð²Ð¾Ð³Ð¾ Ð¿Ñ€Ð¾ÐµÐºÑ‚а (если Ñ‚акая Ð¸Ð¼ÐµÐµÑ‚ся) 

 

Краткие Ñ‚еоретические сведения 

Обзор объектов ADO.NET

 

 

Источник данных DataSet 

Основным Ð¾Ð±ÑŠÐµÐºÑ‚ом ADO ÑÐ²Ð»ÑÐµÑ‚ся Ð¸ÑÑ‚очник Ð´Ð°Ð½Ð½Ñ‹Ñ…, Ð¿Ñ€ÐµÐ´ÑÑ‚авленный 

объектом  DataSet.  DataSet  ÑÐ¾ÑÑ‚оит  Ð¸Ð·  Ð¾Ð±ÑŠÐµÐºÑ‚ов  Ñ‚ипа  DataTable  Ð¸  Ð¾Ð±ÑŠÐµÐºÑ‚ов 
DataRelation. Ð’ ÐºÐ¾Ð´Ðµ Ðº Ð½Ð¸Ð¼ Ð¼Ð¾Ð¶Ð½Ð¾ Ð¾Ð±Ñ€Ð°Ñ‰Ð°Ñ‚ься ÐºÐ°Ðº Ðº ÑÐ²Ð¾Ð¹ÑÑ‚вам Ð¾Ð±ÑŠÐµÐºÑ‚а DataSet, 
то  ÐµÑÑ‚ÑŒ,  Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ  Ñ‚очечную  Ð½Ð¾Ñ‚ацию.  Ð¡Ð²Ð¾Ð¹ÑÑ‚во  Tables  Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚  Ð¾Ð±ÑŠÐµÐºÑ‚ 
типа  DataTableCollection,  ÐºÐ¾Ñ‚орый  ÑÐ¾Ð´ÐµÑ€Ð¶Ð¸Ñ‚  Ð²ÑÐµ  Ð¾Ð±ÑŠÐµÐºÑ‚Ñ‹  DataTable 
используемой Ð±Ð°Ð·Ñ‹ Ð´Ð°Ð½Ð½Ñ‹Ñ…. 

Таблицы Ð¸ Ð¿Ð¾Ð»Ñ (объекты DataTable Ð¸ DataColumn) 

Объекты  DataTable  Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑŽÑ‚ся  Ð´Ð»Ñ  Ð¿Ñ€ÐµÐ´ÑÑ‚авления  Ð¾Ð´Ð½Ð¾Ð¹  Ð¸Ð·  Ñ‚аблиц 

базы Ð´Ð°Ð½Ð½Ñ‹Ñ… Ð² DataSet. Ð’ ÑÐ²Ð¾ÑŽ Ð¾Ñ‡ÐµÑ€ÐµÐ´ÑŒ, DataTable ÑÐ¾ÑÑ‚авляется Ð¸Ð· Ð¾Ð±ÑŠÐµÐºÑ‚ов 
DataColumn. 

DataColumn  -  ÑÑ‚о  Ð±Ð»Ð¾Ðº  Ð´Ð»Ñ  ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ  ÑÑ…емы  DataTable.  ÐšÐ°Ð¶Ð´Ñ‹Ð¹  Ð¾Ð±ÑŠÐµÐºÑ‚ 

DataColumn  Ð¸Ð¼ÐµÐµÑ‚  ÑÐ²Ð¾Ð¹ÑÑ‚во  DataType,  ÐºÐ¾Ñ‚орое  Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÑÐµÑ‚  Ñ‚ип  Ð´Ð°Ð½Ð½Ñ‹Ñ…, 
содержащихся Ð² ÐºÐ°Ð¶Ð´Ð¾Ð¼ Ð¾Ð±ÑŠÐµÐºÑ‚е DataColumn. ÐÐ°Ð¿Ñ€Ð¸Ð¼ÐµÑ€, Ð¼Ð¾Ð¶Ð½Ð¾ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡Ð¸Ñ‚ÑŒ 


background image

тип  Ð´Ð°Ð½Ð½Ñ‹Ñ…  Ð´Ð¾  Ñ†ÐµÐ»Ñ‹Ñ…,  ÑÑ‚роковых  Ð¸  Ð´ÐµÑÑÑ‚ичных  Ñ‡Ð¸ÑÐµÐ».  ÐŸÐ¾ÑÐºÐ¾Ð»ÑŒÐºÑƒ  Ð´Ð°Ð½Ð½Ñ‹Ðµ, 
содержащиеся Ð² DataTable, Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ Ð¿ÐµÑ€ÐµÐ½Ð¾ÑÑÑ‚ся Ð¾Ð±Ñ€Ð°Ñ‚но Ð² Ð¸ÑÑ…одный Ð¸ÑÑ‚очник 
данных, Ð½ÐµÐ¾Ð±Ñ…одимо ÑÐ¾Ð³Ð»Ð°ÑÐ¾Ð²Ñ‹Ð²Ð°Ñ‚ÑŒ Ñ‚ип Ð´Ð°Ð½Ð½Ñ‹Ñ… Ñ Ð¸ÑÑ‚очником. 

Объекты DataRelation 

Объект  DataSet  Ð¸Ð¼ÐµÐµÑ‚  Ñ‚акже  ÑÐ²Ð¾Ð¹ÑÑ‚во  Relations,  Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÑŽÑ‰ÐµÐµ 

коллекцию DataRelationCollection, ÐºÐ¾Ñ‚орая Ð² ÑÐ²Ð¾ÑŽ Ð¾Ñ‡ÐµÑ€ÐµÐ´ÑŒ ÑÐ¾ÑÑ‚оит Ð¸Ð· Ð¾Ð±ÑŠÐµÐºÑ‚ов 
DataRelation. ÐšÐ°Ð¶Ð´Ñ‹Ð¹ Ð¾Ð±ÑŠÐµÐºÑ‚ DataRelation Ð²Ñ‹Ñ€Ð°Ð¶Ð°ÐµÑ‚ Ð¾Ñ‚ношение Ð¼ÐµÐ¶Ð´Ñƒ Ð´Ð²ÑƒÐ¼Ñ 
таблицами  (сами  Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹  ÑÐ²ÑÐ·Ð°Ð½Ñ‹  Ð¿Ð¾  ÐºÐ°ÐºÐ¾Ð¼Ñƒ-либо  Ð¿Ð¾Ð»ÑŽ  (столбцу)). 
Следовательно, ÑÑ‚а ÑÐ²ÑÐ·ÑŒ Ð¾ÑÑƒÑ‰ÐµÑÑ‚вляется через Ð¾Ð±ÑŠÐµÐºÑ‚ DataColumn. 

Строки (объект DataRow) 

Коллекция  Rows  Ð¾Ð±ÑŠÐµÐºÑ‚а  DataTable  Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚  Ð½Ð°Ð±Ð¾Ñ€  ÑÑ‚рок  (записей) 

заданной  Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹.  Ð­Ñ‚а  ÐºÐ¾Ð»Ð»ÐµÐºÑ†Ð¸Ñ  Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÐµÑ‚ся  Ð´Ð»Ñ  Ð¸Ð·ÑƒÑ‡ÐµÐ½Ð¸Ñ  Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚атов 
запроса  Ðº  Ð±Ð°Ð·Ðµ  Ð´Ð°Ð½Ð½Ñ‹Ñ….  ÐœÑ‹  Ð¼Ð¾Ð¶ÐµÐ¼  Ð¾Ð±Ñ€Ð°Ñ‰Ð°Ñ‚ься  Ðº  Ð·Ð°Ð¿Ð¸ÑÑÐ¼  Ñ‚аблицы  ÐºÐ°Ðº  Ðº 
элементам Ð¿Ñ€Ð¾ÑÑ‚ого Ð¼Ð°ÑÑÐ¸Ð²Ð°. 

DataAdapter 

DataSet  -  ÑÑ‚о  ÑÐ¿ÐµÑ†Ð¸Ð°Ð»Ð¸Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ñ‹Ð¹  Ð¾Ð±ÑŠÐµÐºÑ‚,  ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ñ‰Ð¸Ð¹  Ð¾Ð±Ñ€Ð°Ð·  Ð±Ð°Ð·Ñ‹ 

данных.  Ð”ля  Ð¾ÑÑƒÑ‰ÐµÑÑ‚вления  Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑ‚вия  Ð¼ÐµÐ¶Ð´Ñƒ  DataSet  Ð¸  ÑÐ¾Ð±ÑÑ‚венно 
источником  Ð´Ð°Ð½Ð½Ñ‹Ñ…  Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÐµÑ‚ся  Ð¾Ð±ÑŠÐµÐºÑ‚  Ñ‚ипа  DataAdapter.  Ð¡Ð°Ð¼Ð¾  Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ðµ 
этого  Ð¾Ð±ÑŠÐµÐºÑ‚Ð°  -  Ð°Ð´Ð°Ð¿Ñ‚ер,  Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ñ‚ель,  -  ÑƒÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚  Ð½Ð°  ÐµÐ³Ð¾  Ð¿Ñ€Ð¸Ñ€Ð¾Ð´Ñƒ. 
DataAdapter  ÑÐ¾Ð´ÐµÑ€Ð¶Ð¸Ñ‚  Ð¼ÐµÑ‚од  Fill()  Ð´Ð»Ñ  Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ  Ð´Ð°Ð½Ð½Ñ‹Ñ…  Ð¸Ð·  Ð±Ð°Ð·Ñ‹  Ð¸ 
заполнения DataSet. 

 ÐžÐ±ÑŠÐµÐºÑ‚Ñ‹ DBConnection Ð¸ DBCommand 

Объект  DBConnection  Ð¾ÑÑƒÑ‰ÐµÑÑ‚вляет  ÑÐ²ÑÐ·ÑŒ  Ñ  Ð¸ÑÑ‚очником  Ð´Ð°Ð½Ð½Ñ‹Ñ….  Ð­Ñ‚а 

связь  Ð¼Ð¾Ð¶ÐµÑ‚  Ð±Ñ‹Ñ‚ÑŒ  Ð¾Ð´Ð½Ð¾Ð²Ñ€ÐµÐ¼ÐµÐ½Ð½Ð¾  Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð°  Ð½ÐµÑÐºÐ¾Ð»ÑŒÐºÐ¸Ð¼Ð¸  ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ñ‹Ð¼Ð¸ 
объектами. ÐžÐ±ÑŠÐµÐºÑ‚ DBCommand Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ‚ Ð¿Ð¾ÑÐ»Ð°Ñ‚ÑŒ Ð±Ð°Ð·Ðµ Ð´Ð°Ð½Ð½Ñ‹Ñ… ÐºÐ¾Ð¼Ð°Ð½Ð´Ñƒ (как 
правило, ÐºÐ¾Ð¼Ð°Ð½Ð´Ñƒ SQL Ð¸Ð»Ð¸ Ñ…ранимую Ð¿Ñ€Ð¾Ñ†ÐµÐ´ÑƒÑ€Ñƒ). ÐžÐ±ÑŠÐµÐºÑ‚Ñ‹ DBConnection Ð¸ 
DBCommand Ð¸Ð½Ð¾Ð³Ð´Ð° ÑÐ¾Ð·Ð´Ð°ÑŽÑ‚ся Ð½ÐµÑÐ²Ð½Ð¾ Ð² Ð¼Ð¾Ð¼ÐµÐ½Ñ‚ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ объекта DataSet, Ð½Ð¾ 
их Ñ‚акже можно ÑÐ¾Ð·Ð´Ð°Ð²Ð°Ñ‚ÑŒ ÑÐ²Ð½Ñ‹Ð¼ Ð¾Ð±Ñ€Ð°Ð·Ð¾Ð¼. 

Используйте примеры: 

https://msdn.microsoft.com/ru-ru/library/h0y4a0f6.aspx

 

Вопросы 

1.

 

Что такое ADO.NET? ÐšÐ°ÐºÐ¸Ðµ существуют Ñ€ÐµÐ¶Ð¸Ð¼Ñ‹? 

2.

 

Объясните назначение класса SqlConnection. 

3.

 

Объясните назначение класса SqlDataAdapter 

4.

 

Объясните назначение класса SqlException. 

5.

 

Объясните назначение класса  SqlCommand. 

6.

 

В Ñ‡ÐµÐ¼ Ñ€Ð°Ð·Ð½Ð¸Ñ†Ð° Ð¼ÐµÐ¶Ð´Ñƒ Ð¼ÐµÑ‚одами ExecuteNonQuery, ExecuteReader Ð¸ 
ExecuteScalar? 

7.

 

Объясните назначение класса SqlDataReader.  

8.

 

Объясните назначение класса SqlParameter. 

9.

 

Объясните назначение класса SqlTransaction. 

10.

 

Объясните  Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ  ÐºÐ»Ð°ÑÑÐ°  DataSet,  DataTable,  DataColumn, 
DataRow, DataRelation. 


background image