2015-08-18 67 views
0

我一直在使用MySQL加载XML Infile将xml文件加载到MySQL表中。 XML文件格式SQL Server等价于MySQL Load xml infile

<Detail_Collection> 
    <Detail 
     JobId=“12345” 
     JobDescription=“Job1” 
     Sold_To=“Customer1” 
    /> 
    <Detail 
     JobId=“23445” 
     JobDescription=“Job2” 
     Sold_To=“Customer2” 
    /> 
</Detail_Collection> 

我的表看起来像这样

JobId 
JobDescription 
Sold_to 

每一件事工作正常。 我发现自己必须从MySQL迁移到SQL Server,并且似乎无法找到在SQL Server中执行此操作的简单方法。我缺少的东西

回答

0

如果你正在寻找一个SQL查询,以便从XML文件到SQL Server数据库表中提取作业数据,请检查下面的T-SQL语法SQL Server上的查询XML数据

declare @xml as xml 
set @xml = ' 
<Detail_Collection> 
    <Detail 
     JobId="12345" 
     JobDescription="Job1" 
     Sold_To="Customer1" 
    /> 
    <Detail 
     JobId="23445" 
     JobDescription="Job2" 
     Sold_To="Customer2" 
    /> 
</Detail_Collection>' 
select @xml 

select 
job.value('@JobId','int') JobId, 
job.value('@JobDescription','varchar(400)') JobDescription, 
job.value('@Sold_To','varchar(400)') Sold_To 
from @xml.nodes('/Detail_Collection/Detail') as jobs(job) 

在给定的参考文献

上你可以找到有关 querying XML on SQL Server的教程