- PR -

DBに保存されているXMLデータの取得方法について

1
投稿者投稿内容
Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2007-06-29 19:20
ASP.NET2003のC#で開発をしているのですが、
悩みすぎて、煙がでかけています。

DB(SQL Server2005)のテーブルに保存されている
XMLデータ型の項目の中から、
ある要素のテキストデータを
GridDataに表示したいのです。

SQL文で
SELECT XMLDATA FROM XMLTABLE
で実行し、DataSetで取得したデータを
DataTableに展開し、
GridDataのDataSourceへ設定し、
DataBindすれば、すべてのデータ(要素も含め)を表示します。

つまり、何がしたいかと、いいますと・・・

DBの項目に以下のようにXMLデータが
1レコードごと登録されています。
・1レコード目
<?xml ・・・・・>
<a>
<aa>111</aa>
</a>
・2レコード目
<?xml ・・・・・>
<a>
<aa>222</aa>
</a>

そして、SQL文を発行し、
DataSetで取得したデータを
DataTableに展開し、
GridDataのDataSourceへ設定し、
DataBindすれば、

111
222

といった風にGridDataに表示してほしいのです。
なお、その際に同一名があれば、表示させないように
したいのです。(SQL文のDISTINCT)

たぶん、SQL文でOPENXMLを使用するのではないかと
思い、いろいろサンプル等調べているのですが、
解答がでなくて・・・・
(もしかしてOPENXMLじゃないのかも・・・)

皆様のお力をお貸ししただけないでしょうか?

よろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)