Adatok betöltése XML formátumban sql szerver
5.3 Adatok betöltése XML formátumban az SQL Server adatbázis
Adatok betöltése XML formátumban az SQL Server, tárolt eljárás sp _ _ xml preparedocument. Open XML funkció, XML SQL Tools (SQLXML 3,0), a tárgy SQLXMLBulkLoad. loading XML adatok az SQL Server egy VBScript script
Az általános szabály az, ha végre az adatcsere XML formátumban. szükség van nem csak feltölteni az adatokat XML dokumentumok egy SQL Server adatbázisban. hanem letöltheti azokat újra. Az általános rendszer a következő:
1) Az internetes tartalmak az XML dokumentum. Ezt úgy tehetjük meg, egy olyan alkalmazás, amely elvégzi a letöltést. A legegyszerűbb módon -, hogy levelet WSH forgatókönyvet. például:
2) további - már a karosszéria a tárolt eljárás myProcImportXml generál belső hierarchikus ábrázolása az XML dokumentumot, a rendszer tárolt eljárás sp _ XML _ preparedocument
3) Ezután az azonos myProcImportXml használat Open XML-függvényt a memóriában RowSet - táblázat rekordok sorozataként az XML fájl. Segítségével XPath parancsok (speciális nyelvi navigálás XML dokumentumok), akkor tovább szűrni, mi kerül RowSet.
4) továbbra is működjenek együtt a létrehozott RowSet mint egy szabályos táblázat (csak ideiglenes). Leggyakrabban, az adatokat nem használja az INSERT ki a meglévő táblázatok a kiszolgálón, vagy használja a SELECT INTO - automatikusan generált táblázatok.
A gyakorlatban azonban egy ilyen rendszer használata szinte lehetetlen -, mert a korlátozások adattípusok változók TSQL. A Microsoft például a változó Varchar típus használható maximális hossza 8000 bájt. Természetesen a gyakorlatban a legtöbb XML dokumentumok több mint 8 KB. Ezért ajánlott inkább használni TSQL eszközök szoftver tárgyak, például szerepel egy sor XML SQL Tools (SQLXML 3,0) - nekik lesz szó az alábbiakban. A telepítés után van, különösen akkor lehetséges, hogy a szoftveres objektum SQLXMLBulkLoad. ami nagyon gyors és kényelmes az adatok betöltése XML formátumban a szerverre. A megfelelő script kód a következőképpen nézhet ki: