login  Naam:   Wachtwoord: 
Registreer je!
 Forum

SQL Stored Procedure met OPENXML

Offline Ontani - 13/10/2009 11:53
Avatar van OntaniGouden medailleGouden medailleGouden medailleGouden medaille

-1
Ik heb een stored procedure in MSSQL:
  1. SET ANSI_NULLS ON
  2. SET QUOTED_IDENTIFIER ON
  3. go
  4.  
  5.  
  6. -- =============================================
  7. -- Author: Michiel Alders
  8. -- Create date: 13/10/2009
  9. -- Description: Bergplaats matrijzen voor loogafdeling
  10. -- =============================================
  11. ALTER PROCEDURE [dbo].[sp_BergplaatsMatrijzen]
  12. @DATA varchar(MAX)
  13. AS
  14. DECLARE @docHandle int
  15.  
  16. exec sp_xml_preparedocument @docHandle OUTPUT,@DATA
  17.  
  18. SELECT * FROM OPENXML (@docHandle, '/Select/Data',3)
  19. WITH (Matrijs varchar(4), Profiel varchar(2), Proef varchar(1))
  20.  
  21. exec sp_xml_removedocument @docHandle


Die wordt aangeroepen als:
  1. sp_BergplaatsMatrijzen
  2. '
  3. <Select>
  4. <Data>
  5. <Matrijs>3127</Matrijs>
  6. <Profiel>01</Profiel>
  7. <Proef>J</Proef>
  8. </Data>
  9. </Select>
  10. '


Dit geeft mij het resultaat:
  1. Matrijs Profiel Proef
  2. ------- ------- -----
  3. 3127 01 J


Wat voor mij de perfecte uitkomst is.

Maar ik zou graag deze storedprocedure gebruiken met een parameter voor de velden te definiëren zodat ik ook andere XML structuren kan doorgeven aan deze stored procedure.

dus de code:
  1. WITH (Matrijs varchar(4), Profiel varchar(2), Proef varchar(1))


zou ik willen vervangen door:
  1. WITH @fields)


Dan kan ik niet alleen <Matrijs><Profiel> en <Proef> doorgeven maar ook andere Kolommen.

Maar die WITH lijkt geen parameters te ondersteunen.

Iemand een idee wat ik hier tegen kan beginnen?

0 antwoorden

Gesponsorde links
Er zijn nog geen reacties op dit bericht.
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.206s