Home
Über mich
Blog
Veröffentlichungen
IT-Trainings
Impressum


Datenbank: INSERT und UPDATE

Datenbank: INSERT und UPDATE

Selbstverständlich ist es auch möglich, den XML Inpt in Datenbank-Insert- oder Updates zu konvertieren.

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" 
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="text"/>
	<xsl:template match="/">
<xsl:for-each select="//Mensch[Gehalt &lt; 1000]">
<xsl:text>INSERT INTO PERSON (VN, NN, WO) VALUES ('</xsl:text>
<xsl:value-of select="vorname"/>
<xsl:text>', '</xsl:text>
<xsl:value-of select="name"/>
<xsl:text>', '</xsl:text>
<xsl:value-of select="../name"/>
<xsl:text>');
</xsl:text>
</xsl:for-each>    
	</xsl:template>
</xsl:stylesheet>

Die INSERT-Statements, die einer Datenbankanwendung per Script übergeben werden können, würden dann so aussehen:

INSERT INTO PERSON (VN, NN, WO) 
       VALUES ('Hugo', 'Holzflos', 'Neustadt');
INSERT INTO PERSON (VN, NN, WO) 
       VALUES ('Stefan', 'Sagblos', 'Neustadt');
INSERT INTO PERSON (VN, NN, WO) 
       VALUES ('Siggi', 'Sorglos', 'Neustadt');
INSERT INTO PERSON (VN, NN, WO) 
       VALUES ('Heini', 'Herzlos', 'Neustadt');
INSERT INTO PERSON (VN, NN, WO) 
       VALUES ('Rudi', 'Rhodos', 'Darmstadt');

Ein SQL-Script zum Datenbank-Update könnte auf der folgenden Logik basieren:

<xsl:for-each select="//Mensch[Gehalt &lt; 1000]">
<xsl:text>UPDATE ZIELDB set VN = '</xsl:text>
<xsl:value-of select="vorname"/>
<xsl:text>', NN='</xsl:text>
<xsl:value-of select="name"/>
<xsl:text>', WO='</xsl:text>
<xsl:value-of select="../name"/>
<xsl:text>' WHERE ID = </xsl:text>
<xsl:value-of select="id"/>
<xsl:text>; 
</xsl:text>
</xsl:for-each>

... und dieses Ergebnis generieren:

UPDATE ZIELDB set VN = 'Hugo', NN='Holzflos', 
                  WO='Neustadt' WHERE ID = 1; 
UPDATE ZIELDB set VN = 'Stefan', NN='Sagblos', 
                  WO='Neustadt' WHERE ID = 2; 
UPDATE ZIELDB set VN = 'Siggi', NN='Sorglos', 
                  WO='Neustadt' WHERE ID = 3; 
UPDATE ZIELDB set VN = 'Heini', NN='Herzlos', 
                  WO='Neustadt' WHERE ID = 7; 
UPDATE ZIELDB set VN = 'Rudi', NN='Rhodos', 
                  WO='Darmstadt' WHERE ID = 8; 

qrpic/Datenbank_insert_update.jpg

wg / 8. Juli 2017




Fragen? Anmerkungen? Tips?

Bitte nehmen Sie Kontakt zu mir auf (info10@wilfried-grupe.de).



Vielen Dank für Ihr Interesse an meiner Arbeit.


V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

Mobil: 0151. 750 360 61 * eMail: info10@wilfried-grupe.de