sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Infoga flera rader med lagrad procedur och xml-parameter?

Du kan strimla XML med hjälp av nodfunktionen:

CREATE PROC ShredXML (@x xml)
AS BEGIN
    INSERT INTO TBL_TARGET (Name, Color)
    SELECT 
        x.y.value( 'Name[1]', 'VARCHAR(20)' ) AS Name,
        x.y.value( 'Color[1]', 'VARCHAR(20)' ) AS Color
    FROM @x.nodes('cars/car') x(y)
END


exec ShredXML @x = N'<cars><car><Name>BMW</Name><Color>Red</Color></car><car><Name>Audi</Name><Color>Green</Color></car></cars>'


  1. Hur konverterar jag en php-webbapplikation till en skrivbordsapplikation och behåller databas

  2. Hämta url-parameter och infoga i databasen

  3. Hämta SQL-fel:ORA-00957:dubblett av kolumnnamnet när vyn skapas

  4. MySQL Välj från kategori i tabell y där Count (av kategorins produkt från en annan tabell) är större än noll