Сохранить XML непосредственно в базу данных с C # - PullRequest
1 голос
/ 07 июня 2010

Вот часть моего xml файла

<teams>
  <team-profile>
    <name>Australia</name>
    <id>1</id>
    <stats type="Test">
      <span>1877-2010</span>
      <matches>721</matches>
      <won>339</won>
      <lost>186</lost>
      <tied>2</tied>
      <draw>194</draw>
      <percentage>47.01</percentage>
    </stats>
    <squad>
      <player id="135" fullname="Shane Warne"/>
      <player id="136" fullname="Damien Martyn"/>
      <player id="138" fullname="Michael Clarke"/>
    </squad>
  </team-profile>
</team>

Я где-то читал, что есть способ сохранить этот XML непосредственно в базу данных. Я использую VS2010. Я создал набор данных, для данных, которые мне нужны из этого XML. Есть ли способ сопоставить этот XML непосредственно в наборе данных? Любая другая идея? Я также должен сохранить некоторые другие более сложные файлы XML в базу данных.

Я попытался xsd.exe создать схему xsd для этого XML.

1 Ответ

3 голосов
/ 07 июня 2010

SQL Server 2005+ имеет собственный тип данных XML, если вы создаете столбец, вы можете просто выполнить вставку в этот столбец, здесь insert , аналогичный вашему, тип данных второго столбца этой таблицы - xml.

INSERT INTO docs VALUES (1, '<book genre="security"
publicationdate="2002" ISBN="0-7356-1588-2">
   <title>Writing Secure Code</title>
   <author>
      <first-name>Michael</first-name>
      <last-name>Howard</last-name>
   </author>
   <author>
      <first-name>David</first-name>
      <last-name>LeBlanc</last-name>
   </author>
   <price>39.99</price>
</book>')
INSERT INTO docs VALUES (2, 
'<doc id="123">
    <sections>
   <section num="1"><title>XML Schema</title></section>
   <section num="3"><title>Benefits</title></section>
   <section num="4"><title>Features</title></section>
    </sections>
</doc>')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...