Welcome to Sign in | Help
in Search

Clauza FOR XML

Last post 11-13-2006, 1:09 PM by ggciubuc. 2 replies.
Sort Posts: Previous Next
  •  10-19-2006, 10:57 AM 432

    Clauza FOR XML

    Clauza FOR XML

    Clauza FOR XML pentru instructiunea SELECT a fost introdusa in SQL Server 2000 si permite generarea de xml dintr-un  set de randuri. In SQL Server 2005 clauza este imbunatatita printre noutati fiind:

    §          directiva TYPE – care permite returnarea rezultatului generat de interogarea FOR XML in formatul xml

    §          directiva ELEMENTS pentru modul RAW  - valoarea fiecarei coloane este mapata folosind un sub-element al elementului <row> (SQL Server 2000 folosind atribute)

    §          specificarea unui nume pentru elementul <row>

    §          suport pentru valorile NULL – coloanele cu valori NULL pot genera empty elements (elemente vide) cu atribututul xsi:nil prin specificarea optiunii XSINIL

    §          generare schema – o data cu rezultatele interogarii se poate genera si o schema XSD pentru acestea folosind cuvantul cheie XMLSCHEMA

    §          modul PATH – permite specificarea numelor coloanelor folosind sintaxa similara limbajului XPATH pentru maparea valorilor generate in atribute, elemente etc.

    Exemple:

    USE AdventureWorks;

    GO

    --exemplu directiva TYPE

    SELECT ContactID AS Id_Contact,

    FirstName AS Prenume, LastName AS Nume

    FROM Person.Contact

    FOR XML AUTO, TYPE;

    -- exemplu directiva ELEMENTS

    SELECT ProductModelID AS Id_Model, Name AS Nume

    FROM Production.ProductModel

    FOR XML RAW, ELEMENTS;

    -- specificare nume pentru

    -- elementul <row>

    SELECT ProductModelID AS Id_Model, Name AS Nume

    FROM Production.ProductModel

    FOR XML RAW ('ProductModel');

    -- suport pentru valorile NULL

    SELECT ProductID AS Id_Produs, Name AS Nume, Color AS Culoare

    FROM Production.Product

    FOR XML RAW, ELEMENTS XSINIL;

    -- modul PATH

    SELECT ProductModelID AS "@Id_Produs",

           Name AS Nume

    FROM Production.ProductModel

    FOR XML PATH;


    Cristian Andrei Lefter, SQL Server MVP
    MCT, MCSA, MCDBA, MCAD, MCSD .NET,
    MCTS, MCITP - Database Administrator SQL Server 2005
    http://sqlserver.ro
    Filed under: ,
  •  10-23-2006, 8:17 PM 484 in reply to 432

    Re: Clauza FOR XML

    Pentru mai multe detalii puteti citi urmatorul articol: XML Best Practices for Microsoft SQL Server 2005

    Cristian Andrei Lefter, SQL Server MVP
    MCT, MCSA, MCDBA, MCAD, MCSD .NET,
    MCTS, MCITP - Database Administrator SQL Server 2005
    http://sqlserver.ro
  •  11-13-2006, 1:09 PM 863 in reply to 484

    Re: Clauza FOR XML

    Iata o alta resursa interesanta Teach yourself FOR XML in 5 minutes
    Gheorghe Ciubuc,SQL Server Influencer, MCP(SQL 2000), MCTS (SQL Server 2005) , OCA(Oracle 9i), Sybase(Brainbench)
View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems