602SQL-Úplná dokumentace Index  

Programové rozhraní pro práci s XML

Import a export

Pro import XML dat z textového souboru do databáze slouží funkce Import_from_XML. Pro import dat z paměťového bufferu (z proměnné) do databáze slouží funkce Import_from_XML_buffer z klientského API a Import_from_XML_CLOB z jazyka SQL.

Pro export dat z databáze do do textového XML souboru slouží funkce Export_to_XML. Pro export do paměťového bufferu (do proměnné) slouží funkce Export_to_XML_buffer z klientského API a Export_to_XML_CLOB z jazyka SQL.

XML extenze

Při používání XML funkcí z jazyka SQL musí SQL server před prvním voláním nahrát tzv. extenzi (rozšíření) serveru nazvanou 602xml, z knihovny 602xmlXX.dll pro Windows resp. lib602xmlXX.so pro Linux, kde XX je číslo verze. Extenze nazvaná 602xml se interně nahradí správnou verzí knihovny, takže není třeba při změně verze (a změně jména knihovny) přepisovat zdrojové texty procedur. Stejné je to i to v případě nazvání extenze 602xml95, 602xml10 apod., vždy se použije správná verze. Na Windows se extenze nahraje obvykle automaticky, na Linuxu je to třeba (na Windows možno) provést ručně pomocí

IF Load_server_extension('602xml') THEN _použij_XML_API ...
Funkce vrací TRUE, pokud se nahrání podařilo. Na Linuxu adresář s knihovnou lib602xmlXX.so (standardně je to /usr/lib/602sqlXX) musí být mezi adresáři, z nichž je povoleno volat knihovny!

Předávání DAD

Operace s XML soubory vyžadují, aby existoval popis DAD, který popisuje mapování XML na databázi. Tento soubor se předává jako parametr do funkcí provádějících import a export.

Pokud DAD je uložen jako objekt v databázi, pak se předává formou řetězce znaků, který obsahuje hvězdičku a jméno DAD.

V ostatních případech lze DAD předat přímo. Pokud parametr specifikující DAD nezačíná hvězdičkou, považuje se za zápis DAD.

Výskyt chyb

Při provádění funkcí pracujících s XML dokumentem může dojít k chybám různého typu - databázové chyby (např. duplicita při importu), ale i chyby vyplývající z nesprávné struktury XML či DADu, nemožnost přečíst soubor apod. Podrobnosti o chybách a reakci na ně při provádění těchto funkcí naleznete zde.

Podpora XML API v dalších rozhraních

Vývojáři využívající CDK komponenty naleznou obdobné funkce zapouzdřené v komponentě TSQL602XML.

Vývojáři v PHP mohou využít obdobné sady klientských funkcí wb_export_to_XML, wb_export_to_XML_buffer, wb_import_from_XML a wb_import_from_XML_buffer.

Seznam subsekcí: