* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Организация доступа к данным и работа с объектом DataReader
8 февраля 2009
Сейчас вы научитесь получать объекты DataReader с помощью объекта DataCommand для чтения данных непосредственно в приложение. Прежде всего следует создать соединение с БД при помощи окна Server Explorer. > Создание нового соединения
1. Запустите Visual Studio .NET. В меню File щелкните New\Project. Укажите шаб- лон Windows Application для языка, на котором вы пишете, и щелкните ОК. 2. В окне Server Explorer щелкните правой кнопкой узел Data Connections и выбе- рите команду Add Connection — откроется диалоговое окно Data Link Properties. 3. На вкладке Provider выберите провайдер Microsoft Jet 4.0 OLE DB Provider — это провайдер данных для Microsoft Access 2000. Щелкните Next, чтобы перейти на вкладку Connection. 4. В поле Select or Enter a Database Name щелкните кнопку (...), чтобы вызвать ди- алоговое окно Select Access Database. 5. Найдите файл Doughnut Shop.mdb в папке \Labs\Ch06 и выберите его, щелкнув кнопку Open. 6. Щелкните кнопку Test Connection, чтобы проверить соединение, — должно по- явиться сообщение об успешной проверке. Примечание Если такого сообщения вы не получили, вернитесь к пункту 5 и убе- дитесь, что БД выбрана правильно. 7. Щелкните кнопку ОК — в окне Server Explorer появится новое соединение. ^ Создание и настройка объекта DataCommand 1. Перетащите значок БД из окна Server Explorer на форму — к приложению доба- вится новый объект OleDbConnection, представляющий соединение с этой БД. 2. Перетащите с вкладки Data панели Toolbox на форму экземпляр класса OleDb- Command — к приложению добавится новый объект OleDbCotnmand с именем OleDbCommandl (oleDbCommandl). 3. Присвойте свойствам объекта OleDbCommandl (oleDbCommandl), перечислен- ным в таблице 6-7, указанные в ней значения, Таблица 6-7. Свойства объекта OleDbCommandl (oleDbCommandJ) Свойство Значение Connection oleDbConnectionl CommandText SELECT * FROM Customers Примечание На вопрос системы о повторной генерации параметров щелкните кнопку Yes. 4. Перетащите с вкладки Windows Forms панели Toolbox на форму элементы упра- вления Button и ListBox. Запишите в свойство Button!.Text (button 1.Text) строку «Click to Execute DataReader». 5. В окне дизайнера дважды щелкните объект Button! (button!), чтобы создать об- работчик по умолчанию для события Button I. Click (button I. Click) и открыть его в редакторе кода. Добавьте в обработчик следующий код, извлекающий объект DataReader и заполняющий элемент управления ListBox: Visual Basic .NET Dim myReader As Data.OleDb.OleDbDatafleader Dim CustomerString As String OleDbConnectionl.Open() myfleader = OleDbCommandl.ExecuteReaderf) While myReader.Read() = True ' Извлечь список имен и фамилий из таблицы 1 Customers и выполнить их контактенацию. CustomerString = myReader(1).ToString() & " " & _ myReader(2}.ToString() ' Добавить результат в список ListBox. ListBoxl.Items.AddfCustomerString) End While myReader.Close() OleDbConnectionl.Close() Visual C# System.Data.OleDb.OleDbDataReader myReader; string CustomerString; oleDbConnectionl.Open(); myReader = oleDbCommandl.ExecuteReader(); while (myReader.ReadO) // Извлечь список имен и фамилий из таблицы // Customers и выполнить их контактенацию. CustomerString - myReader[l].ToString() + " " н myReader[2].ToString(); // Добавить результат в список ListBox, listBox1.Items.AddCCustomerString); \ myReader,Close(); oleDbConnection!.Close(); 6. Сохраните и протестируйте приложение. По щелчку кнопки элемент управле- ния ListBox должен заполниться именами и фамилиями покупателей, взятыми из таблицы Customers.