Използване на DataSet

Книга: Обработка на база данни с Visual Basic®.NET
Използване на DataSet
Използване на DataSet
Контролният панел на Visual Studio .NET Data съдържа компонент DataSet, който ви позволява да задавате стойности на свойства за набор от данни, като използвате прозореца Properties, вместо да пишете потребителски код. Този начин на работа с DataSet е подобен на работата с компонентите Connection и Command, които са описани в Глава 4, „Моделът ADO.NET: Доставчици на данни“. Конфигурирайте DataSet и свързаните с него обекти със същите дефиниции, използвани в по-ранните кодови фрагменти.
За да направите това, следвайте стъпките по-долу.
1. Създайте друга форма frmDataSetComponent в проекта DataSetCode.
2. В прозореца със свойства на формуляра, укажете стойност на DataSet за свойството Text и стойност frmDataSetComponent за свойството (Name).
3. Увеличете размера на формуляра frmDataSetComponent.
4. Създайте комбинирано поле във формуляра, като го плъзнете от контролния панел.
5. В прозореца Свойства на падащия списък, задайте стойността lstOutput за свойството (Име).
6. Увеличете размера на падащия списък lstOutput, така че да покрива до 80% от областта на формуляра.
7. От панела за управление на данни плъзнете компонент DataSet върху формуляра. В диалоговия прозорец, който се появява на екрана, изберете радио бутона Untyped dataset и щракнете върху бутона OK. Този компонент не се вижда по време на изпълнение на приложението, така че ще бъде под формуляра в режим на създаване на приложение.
8. В прозореца Свойства на този компонент задайте стойността dsEmployeeInfo за свойството (Име).
9. В прозореца Properties на товаизберете свойството Tables и щракнете върху бутона с многоточие от дясната страна на това свойство, за да се покаже диалоговият прозорец Tables Collection Editor.
10. Щракнете върху бутона Добавяне, за да покажете свойствата на първата таблица от набора от данни, който ще бъде създаден.
11. В панела Table1 Properties задайте свойството TableName на Employees, както е показано на Фигура 11. 5.5.

Ориз. 5.5. Диалогов прозорец Редактор на колекция от таблици след посочване на таблицата Служители
12. В панела Свойства на служителите изберете свойството Колони и щракнете върху бутона с многоточие от дясната страна на това свойство, за да се покаже диалоговият прозорец Редактор на колекция от колони.
13. Щракнете върху бутона Добавяне, за да се покажат свойствата на първото поле в таблицата Служители.
14. В панела Column1 Properties, укажете стойността FirstName за свойството ColumnName на първото поле.
15. Щракнете върху бутона Добавяне, за да се покажат свойствата на второто поле в таблицата Служители.
16. В панела Column1 Properties, укажете стойността LastName за свойството ColumnName на второто поле.
17. Щракнете върху бутона Добавяне, за да се покажат свойствата на третото поле в таблицата Служители.
18. В панела Column1 Properties, укажете стойност на ID на отдел за свойството ColumnName и System.Int32 стойност за свойството DataType на третото поле.
След като изпълните тези стъпки, диалоговият прозорец Редактор на колекция от колони ще изглежда като този, показан на фиг. 5.6.

Ориз. 5.6. Диалогов прозорец за редактор на колекция от колони със свойства на полето на таблицата на служителите
19. Щракнете върху бутона Затваряне в диалоговия прозорец Редактор на колекция колони, за да се върнете към диалоговия прозорец Редактор колекция таблици задобавяне на друга таблица с отдели към набора от данни dsEmployeeInfo.
20. Щракнете върху бутона Добавяне, за да покажете свойствата на втората таблица в набора от данни dsEmployeeInfo.
21. В панела Table1 Properties, укажете Departments за свойството TableName на втората таблица.
22. Задайте стойност 5 за свойството MinimumCapacity на втората таблица.
23. В панела Свойства на отдели, укажете свойството Колони и щракнете върху бутона с многоточие от дясната страна на това свойство, за да се покаже диалоговият прозорец Редактор на колекция от колони.
24. Щракнете върху бутона Добавяне, за да покажете свойствата на първото поле в таблицата с отдели.
25. Задайте стойност на ID за свойството ColumnName и стойност System.Int32 за свойството DataType на първото поле.
26. В панела ID Properties задайте свойството Само за четене на True, свойството Unique на True и свойството AutoIncrement на True за първото поле.
27. Щракнете върху бутона Добавяне, за да се покажат свойствата на второто поле в таблицата с отдели.
28. В панела Column1 Properties, укажете стойността DepartmentName за свойството ColumnName.
29. В панела със свойства на DepartmentName задайте свойството Unique на True и свойството AllowDBNull на първото поле на False.
30. Щракнете върху бутона Затваряне в диалоговия прозорец Редактор на колекция от колони, за да се върнете към диалоговия прозорец Редактор на колекция от таблици и след това щракнете отново върху бутона Затваряне, за да затворите диалоговия прозорец Редактор на колекция от таблици.
И така, създадохте набор от данни dsEmployeesInfo с таблиците Employees и Departments, задавайки свойствата на компонента на същите стойности, които са били използвани в кода в листинг 5-1.
Да продължим с тезикомпоненти и дефинирайте връзки между таблици в набора от данни dsEmployeesInfo.
1. В прозореца Properties на компонента dsEmployeesInfo изберете свойството Relations и след това щракнете върху бутона с многоточие, за да се покаже диалоговият прозорец Relations Collection Editor.
2. Щракнете върху бутона Добавяне, за да покажете свойствата на първата връзка между таблиците в набора от данни dsEmployeesInfo в диалоговия прозорец Релация.
3. В текстовото поле Име на диалоговия прозорец Релация, укажете стойността на свойството relDepartmentEmployees на Името.
4. В текстовото поле ParentTable на диалоговия прозорец Relation изберете таблицата Departments на свойството ParentTable.
5. В текстовото поле ChildTable на диалоговия прозорец Relation изберете таблицата Employees на свойството ChildTable.
6. В падащото поле Ключови колони в секцията Колони на диалоговия прозорец Релация изберете полето ID, което ще зададе стойността на ID на свойството ParentColumns на обекта relDepartmentEmployees.
7. По същия начин в падащото поле Колони с чужд ключ в секцията Колони на диалоговия прозорец Релация изберете полето DepartmentID, което ще зададе стойността на DepartmentID на свойството ChildColumns на обекта relDepartmentEmployees.
8. Използвайте стойностите по подразбиране в списъците с правила за актуализиране, правило за изтриване и правила за приемане/отхвърляне, които съответстват на свойствата UpdateRule, DeleteRule и AcceptRejectRule.
9. Щракнете върху бутона OK, за да затворите диалоговия прозорец Relation и след това бутона Close, за да затворите диалоговия прозорец Relations Collection Editor.
Сега остава да посочим стойността на свойството PrimaryKey за всяка таблица.