Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Съхранена процедура:подайте XML като аргумент и INSERT (двойки ключ/стойност)

Ето един пример:

/* Create the stored procedure */
create procedure ParseXML (@InputXML xml)
as
begin
    declare @MyTable table (
        id int,
        value int
    )

    insert into @MyTable 
        (id, value)
        select Row.id.value('@id','int'), Row.id.value('@value','int') 
            from @InputXML.nodes('/Rows/Row') as Row(id)        

    select id, value
        from @MyTable
end
go

/* Create the XML Parameter */
declare @XMLParam xml
set @XMLParam = '<Rows>
                     <Row id="1" value="100" />
                     <Row id="2" value="200" />
                     <Row id="3" value="300" />
                 </Rows>'

/* Call the stored procedure with the XML Parameter */
exec ParseXML @InputXML = @XMLParam

/* Clean up - Drop the procedure */
drop procedure ParseXML
go


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DATEDIFF() срещу DATEDIFF_BIG() в SQL Server:Каква е разликата?

  2. @@DATEFIRST – Вземете първия ден от седмицата в SQL Server

  3. nvarchar(max) срещу NText

  4. Как да почистя (предотвратя SQL инжектирането) динамичен SQL в SQL Server?

  5. Променете типа на данните на колоната на uniqueidentifier от bigint