.net 将多个与t-sql有关系的表读入数据集中

.net 将多个与t-sql有关系的表读入数据集中,.net,xml,sql-server-2008,tsql,dataset,.net,Xml,Sql Server 2008,Tsql,Dataset,可以从多个表(join)中使用一个t-sql语句将数据选择为字符串表示形式,并直接将该文本插入数据集(DataSet.ReadXml(…)) 当然,我需要保持这种关系 我见过一些使用FOR XML的复杂示例,但有没有简单的方法?好吧,我自己做了: SQL = "SELECT table1.x, table2.z FROM table1 INNER JOIN table2 ON table1.ID = table2.SubID FOR XML AUTO, XMLDAT

可以从多个表(
join
)中使用一个
t-sql
语句将数据
选择为字符串表示形式,并直接将该文本插入数据集(
DataSet.ReadXml(…)

当然,我需要保持这种关系

我见过一些使用
FOR XML的复杂示例,但有没有简单的方法?

好吧,我自己做了:

SQL = "SELECT table1.x, table2.z FROM table1 
       INNER JOIN table2 ON table1.ID = table2.SubID
       FOR XML AUTO, XMLDATA";

就这样

DataSet data = new DataSet();
DbCommand cmd = conn.CreateCommand();
cmd.CommandText = SQL;
data.ReadXml(((System.Data.SqlClient.SqlCommand)cmd).ExecuteXmlReader(),
               xmlReadMode.Fragment);