Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将关系SQL数据编写为XML_C#_Sql Server_Xml - Fatal编程技术网

C# 将关系SQL数据编写为XML

C# 将关系SQL数据编写为XML,c#,sql-server,xml,C#,Sql Server,Xml,我在SQL 2010中有两个表之间的主子关系。我想将这些数据转换成一个XML文件,然后发送给供应商。我正在Visual Studio 2012中使用C# 我是否使用强类型数据集?我是否将数据作为一个平面文件写入,其中每一行都是一个连接的记录 TIA-Jeff.我尝试了解决方案的SQL Server部分。您可以将查询放入存储过程中,然后使用C#代码调用存储过程。这将允许您直接在程序中获取XML。这是SQLServer2008R2 CREATE TABLE parent ( par

我在SQL 2010中有两个表之间的主子关系。我想将这些数据转换成一个XML文件,然后发送给供应商。我正在Visual Studio 2012中使用C#

我是否使用强类型数据集?我是否将数据作为一个平面文件写入,其中每一行都是一个连接的记录


TIA-Jeff.

我尝试了解决方案的SQL Server部分。您可以将查询放入存储过程中,然后使用C#代码调用存储过程。这将允许您直接在程序中获取XML。这是SQLServer2008R2

CREATE TABLE parent 
  ( 
     parent_id   INT IDENTITY PRIMARY KEY, 
     parent_name NVARCHAR(100) 
  ); 

CREATE TABLE child 
  ( 
     child_id   INT IDENTITY PRIMARY KEY, 
     parent_id  INT REFERENCES parent(parent_id), 
     child_name NVARCHAR(100) 
  ); 

INSERT INTO parent 
            (parent_name) 
VALUES     ('JOHN'); 

INSERT INTO parent 
            (parent_name) 
VALUES     ('TOM'); 

INSERT INTO parent 
            (parent_name) 
VALUES     ('STACY'); 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (1, 
            'Emily') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (1, 
            'Ryan') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (2, 
            'Krusna') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (2, 
            'Uma') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (2, 
            'Kali') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (3, 
            'Jimbo') 

INSERT INTO child 
            (parent_id, 
             child_name) 
VALUES     (3, 
            'Howard') 

SELECT parent.parent_id   AS "@parentId", 
       parent.parent_name AS "@parentname", 
       (SELECT child_id   AS "@childId", 
               child_name AS "@childName" 
        FROM   child 
        WHERE  child.parent_id = parent.parent_id 
        FOR xml path ('Child'), type) 
FROM   parent 
       INNER JOIN child 
               ON ( parent.parent_id = child.parent_id ) 
FOR xml path ('Parent'), root ('Container'), type   

没有SQL 2010。SQL Server有一个功能,它可以为您构造XML(如果有帮助的话)