2016-05-18 4 views
1

У меня есть этот код в SQL запрос:Импортировать XML-файл в таблицу SQL?

CREATE TABLE Products(
P VARCHAR(30)); 

Select * 
from products 

Declare @x xml 

Select @x=P 
from openrowset (BULK 'C:\Pantanir.xml', Single_blob) AS Products(P) 

Select @x 

где P представляет собой столбец таблицы продуктов. С этим я только импортирую XML-файл в мою базу данных, но я хочу создать таблицу с чем-то вроде этого, но это не сработает.

from openxml (@hdoc, '/reservation',1) 
with ('Someattribute') 

Часть моего XML-файла показана ниже. Я хочу создать два столбца (ReservationNo и SecurityCode) и взять значения из файла XML и импортировать их в таблицу SQL. Это возможно ?

<reservation> 
    <reservationNo>9833591189</reservationNo> 
    <securityCode>ad4badfd56</securityCode> 

ответ

2

Пожалуйста, попробуйте приведенный ниже код. Это дает результат в SQL Server 2012.

DECLARE @XML XML = ' <reservation> 
    <reservationNo>9833591189</reservationNo> 
    <securityCode>ad4badfd56</securityCode></reservation>' 

SELECT 
    reservationNo = Events.value('(reservationNo)[1]', 'varchar(100)'), 
    securityCode = Events.value('(securityCode)[1]', 'varchar(100)') 
FROM 
    @XML.nodes('/reservation') AS XTbl(Events) 
+0

Это работает !, Большое спасибо. – davidhlynsson

Смежные вопросы