Вход/Регистрация
Обработка баз данных на Visual Basic®.NET
вернуться

Прайс Кевин Т.

Шрифт:

<FirstName>Laura</FirstName>

<LastName>Davidson</LastName>

<DepartmentID>4</DepartmentID>

<Salary>60000</Salary>

</tblEmployee>

<tblEmployee>

<ID>2050</ID>

<FirstName>Katie</FirstName>

<LastName>Chideya</LastName>

<DepartmentID>4</DepartmentID>

<Salary>76000</Salary>

</tblEmployee>

<tblEmployee>

<ID>2054</ID>

<FirstName>Cathy</FirstName>

<LastName>Rosenthal</LastName>

<DepartmentID>4</DepartmentID>

<Salary>5555</Salary>

</tblEmployee>

<tblEmployee>

<ID>2058</ID>

<FirstName>Kathleen</FirstName>

<LastName>Husbands</LastName>

<DepartmentID>4</DepartmentID>

<Salary>108000</Salary>

</tblEmployee>

 </tblDepartment>

</NewDataSet>

Создание объекта XmlReader с помощью объекта Command

В главе 4, "Модель ADO.NET: провайдеры данных", описываются способы работы с объектом Command, который является ключевым объектом — провайдером данных на платформе .NET. В ней рассматриваются способы выполнения команд на основе объектов ExecuteReader, ExecuteScalar и ExecuteNonQuery. Хотя все провайдеры данных на платформе .NET реализуют эти методы, объект SqlCommand имеет дополнительный метод ExecuteXmlReader, который используется для извлечения и доступа к XML-данным из СУБД SQL Server.

Метод ExecuteXmlReader возвращает объект XmlReader точно так же, как он возвращает объект DataReader.

Для демонстрации применения метода ExecuteXmlReader вернитесь к проекту ADO-XML и выполните следующее.

1. Включите в форму frmXML под кнопкой Write XML еще одну кнопку, перетаскивая ее из панели элементов управления.

2. В окне свойств Properties укажите значение btnExecuteXML для свойства (Name) и значение ExecuteXMLReader для свойства Text этой кнопки.

3. Затем в определении класса формы frmXML введите код из листинга 10.12.

Листинг 10.12. Код извлечения и обработки данных из СУБД SQL Server в формате XML

Private Sub btnExecuteXML_Click(ByVal sender As System.Object, _

 ByVal e As System.EventArgs) Handles btnExecuteXML.Click

 Dim cn As New SqlConnection _

("data source=localhost;initial catalog=pubs;user id=sa")

 Dim cmd As New SqlCommand _

("select * from stores for xml auto, elements", en)

 Dim reader As Xml.XmlReader

 Dim str As New System.Text.StringBuilder

 cn.Open

 ' Выполнение SQL-команды Select с предложением FOR XML.

 reader = cmd.ExecuteXmlReader

 ' Поиск и извлечение данных из узлов-элементов.

 While reader.Read

Select Case reader.NodeType

Case Xml.XmlNodeType.Element

str.Append("<" & reader.Name & ">")

Case Xml.XmlNodeType.EndElement

str.Append("</" & reader.Name & ">" & ControlChars.CrLf)

Case Xml.XmlNodeType.Text

str.Append(reader.Value)

Case Else

' В данном примере игнорируется.

End Select

 End While

 MsgBox(str.ToString)

 сn.Close

End Sub

  • Читать дальше
  • 1
  • ...
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: