» » » Джеффри Мак-Манус - Обработка баз данных на Visual Basic®.NET


Авторские права

Джеффри Мак-Манус - Обработка баз данных на Visual Basic®.NET

Здесь можно скачать бесплатно "Джеффри Мак-Манус - Обработка баз данных на Visual Basic®.NET" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство Издательский дом "Вильямс", год 2003. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Джеффри Мак-Манус - Обработка баз данных на Visual Basic®.NET
Рейтинг:
Название:
Обработка баз данных на Visual Basic®.NET
Издательство:
Издательский дом "Вильямс"
Год:
2003
ISBN:
5-8459-0512-5
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Обработка баз данных на Visual Basic®.NET"

Описание и краткое содержание "Обработка баз данных на Visual Basic®.NET" читать бесплатно онлайн.



Это практическое руководство разработчика программного обеспечения на Visual Basic .NET и ADO.NET, предназначенное для создания приложений баз данных на основе WinForms, Web-форм и Web-служб. В книге описываются практические способы решения задач доступа к данным, с которыми сталкиваются разработчики на Visual Basic .NET в своей повседневной деятельности. Книга начинается с основных сведений о создании баз данных, использовании языка структурированных запросов SQL и системы управления базами данных Microsoft SQL Server 2000. Затем рассматриваются способы использования основных объектов модели ADO.NET для доступа к данным в реляционных базах данных. Благодаря подробным примерам, читатели могут изучить способы использования основных свойств и методов, а также узнать о более сложных компонентах и технологиях. Многочисленные листинги с кодом на языке Visual Basic .NET иллюстрируют используемые концепции, а бизнес-ситуации показывают практическую область их применения.






Объект DataSet имеет методGetXml, который возвращает XML-строку с данными из объекта DataSet. Точно такой же результат можно получить, используя метод со вторым параметром XmlWriteMode, который имеет значение IgnoreSchema. Извлечение данных в виде одной строки иногда позволяет более гибко программировать доступ к данным, но требует больших усилий, особенно если вам нужно всего лишь записать данные в файл. 

Для записи схемы данных из объекта DataSet в отдельном XSD-файле (вместо встраивания ее в данные) предусмотрен метод WriteXmlSchema, который используется так, как показано ниже.

dsSales.WriteXmlSchema

В листинге 10.5 приведено содержимое файла StoreSales.xsd, полученного в результате выполнения этого метода.

Листинг 10.5. Содержимое файла StoreSales.xsd, который является схемой из объекта dsSales

<?xml version="1.0" standalone="yes"?>

<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

 <xs:element name="NewDataSet" msdata:lsDataSet="true">

  <xs:complexType>

   <xs:choice maxOccurs="unbounded">

    <xs:element name="Sales">

     <xs:complexType>

      <xs:sequence>

       <xs:element name="stor_id" type="xs:string" minOccurs="0" />

       <xs:element name="ord_num" type="xs:string" minOccurs="0" />

       <xs:element name="ord_date" type="xs:dateTime" minOccurs="0" />

       <xs:element name="qty" type="xs:short" minOccurs="0" />

       <xs:element name="payterms" type="xs:string" minOccurs="0" />

       <xs:element name="title_id" type="xs:string" minOccurs="0" />

      </xs:sequence>

     </xs:complexType>

    </xs:element>

    <xs:element name="Stores">

     <xs:complexType>

      <xs:sequence>

       <xs:element name="stor_id" type="xs:string" minOccurs="0" />

       <xs:element name="stor_name" type="xs:string" minOccurs="0" />

       <xs:element name="stor_address" type="xs:string" minOccurs="0" />

       <xs:element name="city" type="xs:string" minOccurs="0" />

       <xs:element name="state" type="xs:string" minOccurs="0" />

       <xs:element name="zip" type="xs:string" minOccurs="0" />

      </xs:sequence>

     </xs:complexType>

    </xs:element>

   </xs:choice>

  </xs:complexType>

 </xs:element>

</xs:schema>

Формат DiffCram

Рассмотрим теперь формат DiffGram, который используется членами перечислений XmlReadMode и XmlWriteMode. Это XML-формат, содержащий не только текущие значения элементов-данных, но и их исходные значения, которые были изменены или удалены (вслед за последним вызовом метода AcceptChanges). Итак, DiffGram представляет собой формат сериализации, который используется для передачи данных другому процессу или компьютеру. Поскольку эти данные фактически имеют XML-формат, они могут легко передаваться другим платформам, например UNIX или Linux.

Каждый файл формата DiffGram имеет три раздела. Первый раздел содержит текущие значения всех записей объекта DataSet, независимо от того, изменялись они или нет. Любой измененный элемент (запись) обозначается как diffgr:hasChanges="modified", а любой добавленный элемент (запись) — как diffgr:hasChanges="inserted". Второй раздел содержит исходные значения всех измененных и удаленных записей. Его элементы связаны с соответствующими элементами первого раздела, которые обозначаются как diffgr:id="xxx", где ххх — идентификатор записи. Третий раздел содержит информацию об ошибках работы с записями. Его элементы связаны аналогичным образом с соответствующими элементами первого раздела, которые обозначаются как diffgr:id="xxx".

Для генерации XML-файла в формате DiffGram нужно внести приведенные ниже изменения (они обозначены полужирным начертанием) в подпрограмму btnWriteXML_Click.H3 листинга 10.3.

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

 ByVal e As System.EventArgs) Handles btnWriteXML.Click

 Dim dsSales As New DataSet()

 Dim en As New SqlConnection _

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

 Dim daAuthors As New SqlDataAdapter("select * from sales ", en)

 Dim daPublishers As New SqlDataAdapter("select * from stores ", en)

 ' Загрузка реляционных данных из базы данных.

 daAuthors.Fill(dsSales, "Sales")

 daPublishers.Fill(dsSales, "Stores")

 ' Запись XML-данных в файл.

 dsSales.WriteXml("..\StoreSales.xml")

 ' Запись схемы в XSD-файл.

 dsSales.WriteXmlSchema("..\StoreSales.xsd")

 ' Пример изменения, удаления и вставки новой записи.

 dsSales.Tables("Stores").Rows(0)("stor_id") = 999 ' Изменение

 dsSales.Tables("Stores").Rows(1).Delete() ' Удаление

 Dim rr As DataRow = dsSales.Tables("Stores").NewRow()

 rr("stor_name") = "New Store"

 dsSales.Tables("Stores").Rows.Add(rr) ' Вставка

 ' Сохранение только измененных записей в формате DiffGram.

 Dim ChangedDataSet = dsSales.GetChanges()

 ChangedDataSet.WriteXml("…\Changes.xml", XmlWriteMode.DiffGram)

 ' Сохранение всех записей в формате DiffGram.

 dsSales.WriteXml("…\DiffGram.xml", XmlWriteMode.DiffGram)

End Sub

В листинге 10.6 приведено содержимое файла DiffGram.xml, полученного в результате щелчка на кнопке Write XML формы проекта ADO-XML. Внесенные в таблицу Stores изменения выделены полужирным начертанием. Удаленная запись отсутствует в разделе текущих данных, но присутствует в разделе исходного состояния вместе с исходным значением измененной записи. Кроме того, раздел с текущими данными содержит новую запись с отметкой "inserted" (вставлена).

Листинг 10.6. XML-файл DiffGram.xml в формате DiffGram с одной вставленной записью, одной удаленной записью и одной измененной записью

<?xml version="1.0" standalone="yes"?>

<diffgr:diffgram xmlns:msdata="urn:schemes-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">

 <NewDataSet>

  <Sales diffgr:id="Sales1" msdata:rowOrder="0">

   <stor_id>6380</stor_id>

   <ord_num>6871</ord_num>

   <ord_date>1994-09-14T00:00:00.0000000+02:00</ord_date>

   <qty>5</qty>

   <payterms>Net 60</payterms>

   <title_id>BU1032</title_id>

  </Sales>

  <Sales diffgr:id="Sales2" msdata:rowOrder="1">

   <stor_id>6380</stor_id>

   <ord_num>722a</ord_num>

   <ord_date>1994-09-13T00:00:00.0000000+02:00</ord_date>

   <qty>3</qty>

   <payterms>Net 60</payterms>

   <title_id>PS2091</title_id>

  </Sales>

  <Sales diffgr:id="Sales3" msdata:rowOrder="2">

   <stor_id>7066</stor_id>

   <ord_num>A2976</ord_num>

   <ord_date>1993-05-24T00:00:00.0000000+02:00</ord_date>

   <qty>50</qty>

   <payterms>Net 30</payterms>

   <title_id>PC8888</title_id>

  </Sales>

  <Sales diffgr:id="Sales4" msdata:rowOrder="3">

   <stor_id>7066</stor_id>

   <ord_num>QA7442.3</ord_num>

   <ord_date>1994-09-13T00:00:00.0000000+02:00</ord_date>

   <qty>75</qty>

   <payterms>ON invoice</payterms>

   <title_id>PS2091</title_id>

  </Sales>

  <Sales diffgr:id="Sales5" msdata:rowOrder="4">

   <stor_id>7067</stor_id>

   <ord_num>D4482</ord_num>

   <ord_date>1994-09-14T00:00:00.0000000+02:00</ord_date>

   <qty>10</qty>

   <payterms>Net 60</payterms>

   <title_id>PS2091</title_id>

  </Sales>

  <Sales diffgr:id="Sales6" msdata:rowOrder="5">

   <stor_id>7067</stor_id>

   <ord_num>P2121</ord_num>

   <ord_date>1992-06-15T00:00:00.0000000+02:00</ord_date>

   <qty>40</qty>

   <payterms>Net 30</payterms>

   <title_id>TC3218</title_id>

  </Sales>

  <Sales diffgr:id="Sales7" msdata:rowOrder="6">

   <stor_id>7067</stor_id>

   <ord_num>P2121</ord_num>

   <ord_date>1992-06-15T00:00:00.0000000+02:00</ord_date>

   <qty>20</qty>

   <payterms>Net 30</payterms>

   <title_id>TC4203</title_id>

  </Sales>

  <Sales diffgr:id="Sales8" msdata:rowOrder="7">

   <stor_id>7067</stor_id>

   <ord_num>P2121</ord_num>

   <ord_date>1992-06-15T00:00:00.0000000+02:00</ord_date>

   <qty>20</qty>

   <payterms>Net 30</payterms>

   <title_id>TC7777</title_id>

  </Sales>

  <Sales diffgr:id="Sales9" msdata:rowOrder="8">

   <stor_id>713K/stor_id>

   <ord_num>N914008</ord_num>

   <ord_date>1994-09-14T00:00:00.0000000+02:00</ord_date>

   <qty>20</qty>

   <payterms>Net 30</payterms>

   <title_id>PS2091</title_id>

  </Sales>

  <Sales diffgr:id="Sales10" msdata:rowOrder="9">

   <stor_id>7131</stor_id>

   <ord_num>N914014</ord_num>

   <ord_date>1994-09-14T00:00:00.0000000+02:00</ord_date>

   <qty>25</qty>

   <payterms>Net 30</payterms>

   <title_id>MC3021</title_id>

  </Sales>

  <Sales diffgr:id="Sales11" msdata:rowOrder="10">

   <stor_id>7131</stor_id>


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Обработка баз данных на Visual Basic®.NET"

Книги похожие на "Обработка баз данных на Visual Basic®.NET" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Джеффри Мак-Манус

Джеффри Мак-Манус - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Джеффри Мак-Манус - Обработка баз данных на Visual Basic®.NET"

Отзывы читателей о книге "Обработка баз данных на Visual Basic®.NET", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.