Опубликован: 13.07.2010 | Уровень: специалист | Доступ: платный
Самостоятельная работа 5:

Элементы управления Data в приложениях на C#

Аннотация: В лекции рассматривается типовая учебная база данных Northwind. Пространство имен BCL. Подключение к данным связанного списка. Управление составом данных, отображаемых в связанном списке. Просмотр отдельных текстовых полей по выбранному элементу списка. Редактирование и обновление данных, добавление и удаление записей с использованием связанных элементов управления. Обработка ошибок с помощью связанных элементов управления.
Ключевые слова: знание, метод доступа, вероятность, управление данными, ADO.NET, net, сборка мусора, Типовая, Data, C, Server Explorer, меню, дерево, базы данных, Basic, class library, Object Browser, команда, browser, Visual Studio .Net, использование базы данных, Toolbox, SQL, server, DataSet, адаптер, DAO, коллекция объектов, провайдер, ADO, операторы SQL, хранимая процедура, выборка данных, sqlconnection, хранилище данных, visual, рабочий стол, Connection, adaptability, связь, список, data link, канал передачи данных, NEXT, sql statement, SQL-запрос, поле, advanced, finish, form designer, component, оболочка, объект, источник данных, generation, компонент, dock, fill, DataSource, редактор кода, производительность, имя класса, подстрока, 'bottom', элемент списка, replaceability, find, matching, icon, соединение с базой данных, поставщик данных, интерфейс, dialog, editor, ReadOnly, BorderStyle, contact, region, postal code, phone, fax, куча, cancellation, сохранение данных, locking, сохранность данных, откат, сохранение изменений, &-параллелизм, первичный ключ, XSD, source coding, text editor, new, DELETE, область действия, запись, значение, фильтр поля, обработка исключений, exception, ловушка, программа, тип исключения, производный класс, исключительная ситуация, передача сообщений, закрытие файла, приложение, операции, пользователь, состояние программы, тело функции, event

Файлы к лабораторной работе Вы можете скачать здесь.

Однажды в студентную зимнюю пору Виталя Биктимиров сказал про Visual Studio .NET 2003 такие мудрые слова: "Я знал, что там все разложено по полочкам, но я не подозревал, что этих полок окажется так много" !!! А вот тебе, Виталя, еще целый стеллаж...

Студент Панасюк, если серьезно заниматься разработкой приложений, то чтобы добыть достаточное количество сала, без знаний о базах данных не обойтись. В каждом потенциальном Заказчике Вы обязательно встретите лукавую ухмылку и коварный вопрос, а можете ли Вы разрабатывать приложения для управления большими объемами данных. Поэтому знание методов доступа к данным и наличие навыков работы с ними жизненно необходимы, и даже больше, чем сало.

Данные имеют разные формы и размеры и в мире существует великое множество способов хранения данных. Вероятность появления у клиента желания перейти на базу данных другого производителя очень велика. Поэтому, чтобы судорожно не переучиваться на голодный желудок, необходимо владеть знанием универсального механизма доступа и управления данными. И это средство в последнее время появилось - оно называется ADO.NET.

Технология .NET представляет собой совершенно новый способ программирования, предполагающий наличие управляемой исполняющей среды и механизма сборки мусора. В рамках этой технологии создание универсальных приложений обработки данных разных форматов стало реальностью. В данной лабораторной работе мы приступим к практическому изучению этой самой перспективной на сегодняшний день технологии.

Для решения задач программного управления данными нами будет использована типовая учебная база Northwind. Если на вашем компьютере она отсутствует, то в каталоге Data этой лабораторной работы запустите программу SampDBInstall.exe и введите по запросу имя сервера localhost. Возможно, перед этим файлы

  • northwind.sql
  • pubs.sql
  • SampDBInstall.exe

придется скопировать в папку C:\MSSQL7\Data. Установите обе учебных базы, т.к. они нам в дальнейшем понадобятся именно обе.


Провильность установки баз данных можно проверить, если открыть панель Server Explorer оболочки через меню View


В этой панели отображается дерево доступных сервисов, среди которых можно увидеть установленные базы данных, в том числе нужные нам Northwind и pubs (на данном этапе нам понадобится только база Northwind, но в дальнейшем, даст Бог, доберемся и до второй)


Далее мы будем употреблять термины, в которые вложен одинаковый смысл:

  • Компонент
  • Элемент управления
  • Класс

Пространство имен BCL

BCL - Basic Class Library разделена на множество пространств имен, которые по аналогии можно сравнить с каталогами файловой системы, внутри которых размещены конкретные классы. Для ознакомления и поиска нужного пространства имен можно использовать панель Object Browser (команда меню View/Object Browser) оболочки Visual Studio .NET 2003.

Для создания приложений с использованием баз данных в режиме визуального проектирования Design во вкладке Data панели Toolbox предусмотрен ряд компонентов для решения различных задач управления данными. Эти компоненты являются визуальным представлением соответствующих классов в пространстве имен BCL.

Если известно, что для приложения должна использоваться база данных типа SQL Server, то для обеспечения более высокой производительности этого приложения следует применять классы, которые относятся к пространству имен System.Data.SqlClient. Но если тип базы данных, применяемой в приложении заранее не известен, то следует использовать классы пространства имен System.Data.OleDb



На вкладке Data панели Toolbox соответствующие компоненты имеют префиксы Sql и OleDb


Назначение некоторых из компонентов
Компонент Назначение
DataSet Используется в сочетании с другими компонентами и позволяет хранить результаты, возвращенные командами и адаптерами данных. В отличие от наборов записей в технологиях ADO (не путать с ADO.NET) и DAO, этот компонент фактически позволяет вернуться к иерархическому представлению данных. Свойства и коллекции объекта DataSet дают возможность получить полный доступ к отдельным таблицам, строкам и столбцам.
OleDbDataAdapter Дает возможность управлять командами, которые должны быть применены к такому провайдеру данных OleDb, как Jet, Oracle или SQL Server, и хранить их. В частности, могут применяться команды выборки, обновления, вставки и удаления записей. Отслеживается также объект соединения Connection, к которому применяются эти команды.
OleDbConnection Позволяет сопровождать информацию о соединении для провайдера данных OleDb. Он применяется в сочетании с компонентом OleDbDataAdapter.
OleDbCommand Как и объект команды ADO, позволяет передавать в базу данных операторы SQL или хранимые процедуры для выполнения трудоемких операций или выборки данных.
SqlDataAdapter Аналогичен компоненту OleDbDataAdapter за исключением того, что он применяется для доступа только к хранилищам данных SQL Server.
SqlConnection Аналогичен компоненту OleDbConnection за исключением того, что он применяется для доступа только к хранилищам данных SQL Server.
SqlCommand Аналогичен компоненту OleDbCommand за исключением того, что он применяется для доступа только к хранилищам данных SQL Server.
DataView Позволяет создавать несколько представлений одной и той же таблицы. В частности, он обеспечивает возможность просматривать данные, находящиеся в различных состояниях, например, удаленные, модифицированные или как-то отсортированные.

В качестве упражнения создадим соединение с учебной базой данных Northwind, которая поставлется вместе с оболочкой Visual Studio .NET 2003, но которая есть в каталоге Data данной работы.

Александр Очеретяный
Александр Очеретяный
Украина, Киев
Анастасия Балыбердина
Анастасия Балыбердина
Украина, Киев, НТУУ КПИ