2011-12-29 10 views
1

SQL Serverのテーブルにxmlをロードする必要があります。 xmlのサイズは約17 Mbです。 私は次のコードでしようとしています:大規模なXMLをSQL Server 2008にロード

DECLARE @tempTable TABLE (
codesthot NVARCHAR(50), 
codpobhot NVARCHAR(50), 
hot_codigo NVARCHAR(50), 
hot_codcobol NVARCHAR(50), 
hot_coddup NVARCHAR(50), 
hot_afiliacion NVARCHAR(50) 
) 

DECLARE @xml XML 
SET @xml='<hotel> 
       <codesthot><![CDATA[ABALK]]></codesthot> 
       <codpobhot><![CDATA[34815]]></codpobhot> 
       <hot_codigo><![CDATA[265369]]></hot_codigo> 
       <hot_codcobol><![CDATA[724224]]></hot_codcobol> 
       <hot_coddup><![CDATA[724224]]></hot_coddup> 
       <hot_afiliacion><![CDATA[RS]]></hot_afiliacion> 
      </hotel> 
... 

INSERT INTO @tempTable 
SELECT Tbl.Col.value('codesthot[1]', 'NVARCHAR(50)'), 
Tbl.Col.value('codpobhot[1]', 'NVARCHAR(50)'), 
Tbl.Col.value('hot_codigo[1]', 'NVARCHAR(50)'), 
Tbl.Col.value('hot_codcobol[1]', 'NVARCHAR(50)'), 
Tbl.Col.value('hot_coddup[1]', 'NVARCHAR(50)'), 
Tbl.Col.value('hot_afiliacion[1]', 'NVARCHAR(50)') 
FROM @xml.nodes('//hotel') Tbl(Col) 

SELECT * FROM @tempTable 

それは5時間稼働していると私はそれを取ることができるどのくらい知っているドント。 他にどんな方法がありますか?

ありがとうございます!

答えて

関連する問題