<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=193.196.133.70</id>
	<title>Wikizone - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=193.196.133.70"/>
	<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Spezial:Beitr%C3%A4ge/193.196.133.70"/>
	<updated>2026-05-07T04:27:15Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=1087</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=1087"/>
		<updated>2007-07-11T11:15:05Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Stichworte&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Todos Linux Skript:&lt;br /&gt;
# Sonderzeichen austauschen bzw. escapen (,-&amp;gt; chr(44) ; Zeilenumbruch - &amp;gt; chr(10); &amp;quot;&lt;br /&gt;
Datensätze aus phpmyadmin als csv Exportieren z.B. mit CSV-Optionen&lt;br /&gt;
Felder getrennt mit ~&lt;br /&gt;
Felder eingeschlossen von~&lt;br /&gt;
Felder escaped von\&lt;br /&gt;
&lt;br /&gt;
In Open Office importieren und Zeilenwechsel mit &amp;lt;br&amp;gt; ersetzen (in Inhalten) ansonsten entfernen.&lt;br /&gt;
Ersetzung mit reg. Expr und \n&lt;br /&gt;
&lt;br /&gt;
Zeilen getrennt mit&lt;br /&gt;
# recode ISO_8859-1..utf-8&lt;br /&gt;
# Tabelle mit den Feldern anlegen (tblFields)&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Problemstellung:===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Export von Datenstrukturen aus Infosite&amp;#039;&amp;#039;&amp;#039; (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur im Typo3. Problematisch ist insbesondere, daß die Datenfelder (Adresse, Name...) nicht wie gewohnt in Tabellenspalten liegen sondern selbst wieder Datensätze in Tabellen sind. &lt;br /&gt;
&lt;br /&gt;
===Allgemeines Vorgehen:===&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Neue Datenbankstruktur&amp;#039;&amp;#039;&amp;#039; prinzipiell planen &amp;amp; aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten in einer Tabelle zu haben - d.h. Spaltennamen (Feldnamen) und Werte liegen in jeweils einer Zeile (=ein Datensatz) Als Hilfe zum Testen der SQL Abfragen kommt die Extension wfqbe_dbquery zum Einsatz.&lt;br /&gt;
## Abfrage ausführen, Export in .csv Datei (manuell)&lt;br /&gt;
# Auslesen aller vorhandenen Felder und erzeugen einer SQL-Datei die die gefundenen Felder als Spaltennamen einer neuen Tabelle erzeugt.&lt;br /&gt;
## awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039;  und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
Komma am Ende der letzten Zeile löschen:&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
&lt;br /&gt;
Komplettes Skript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
rpl -q &amp;quot;&amp;#039;&amp;quot; &amp;quot;&amp;quot; personaldb3.csv&lt;br /&gt;
awk -F &amp;quot;$&amp;quot; &amp;#039;{print $2}&amp;#039; personaldb3.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;CREATE TABLE personal (&amp;quot; &amp;gt; personal.sql&lt;br /&gt;
cat insert.sql &amp;gt;&amp;gt; personal.sql&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
echo &amp;quot;);&amp;quot; &amp;gt;&amp;gt; personal1.sql&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
Abfrage von allen Personalbildern&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT anm_anmeldung.seiten_location, tpl_feld_in_seite.seiten_ID FROM ( anm_anmeldung JOIN tpl_feld_in_seite ON anm_anmeldung.anmeldung_ID = tpl_feld_in_seite.feldurl ) WHERE tpl_feld_in_seite.feldname LIKE &amp;#039;SP_BILD_D&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfügen der Bilder in die Personaltabelle (vorher Spalte image anlegen)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
update personaldb4,personalbildtmp set personaldb4.image = personalbildtmp.image where personalbildtmp.uid = personaldb4.uid&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SCHLAGWORTE PERSONAL&lt;br /&gt;
&lt;br /&gt;
Über SQL alle Schlagworte zum Pool 69 (Personal) + Name&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT swp_sw_in_swp.schlagwort_ID, sw_schlagworte.name FROM ( swp_sw_in_swp JOIN sw_schlagworte ON swp_sw_in_swp.schlagwort_ID = sw_schlagworte.schlagwort_ID ) WHERE swp_sw_in_swp.sw_pool_ID = 69&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Gefundene Schlagworte in eigene Typo Tabelle (über csv Export - Import)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=837</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=837"/>
		<updated>2007-05-30T15:49:20Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Todos Linux Skript:&lt;br /&gt;
# Sonderzeichen austauschen bzw. escapen (,-&amp;gt; chr(44) ; Zeilenumbruch - &amp;gt; chr(10); &amp;quot;&lt;br /&gt;
# recode ISO_8859-1..utf-8&lt;br /&gt;
# Tabelle mit den Feldern anlegen (tblFields)&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problemstellung: Export von Datenstrukturen aus Infosite (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur.&lt;br /&gt;
&lt;br /&gt;
Allgemeines Vorgehen:&lt;br /&gt;
&lt;br /&gt;
# Datenbankstruktur prinzipiell aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten zu bekommen&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039; (die Felder liegen nicht als DB-Felder vor sondern sind als Daten in der Tabelle aufgeführt) und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
Komma am Ende der letzten Zeile löschen:&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
&lt;br /&gt;
Komplettes Skript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
rpl -q &amp;quot;&amp;#039;&amp;quot; &amp;quot;&amp;quot; personaldb3.csv&lt;br /&gt;
awk -F &amp;quot;$&amp;quot; &amp;#039;{print $2}&amp;#039; personaldb3.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;CREATE TABLE personal (&amp;quot; &amp;gt; personal.sql&lt;br /&gt;
cat insert.sql &amp;gt;&amp;gt; personal.sql&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
echo &amp;quot;);&amp;quot; &amp;gt;&amp;gt; personal1.sql&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
Abfrage von allen Personalbildern&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT anm_anmeldung.seiten_location, tpl_feld_in_seite.seiten_ID FROM ( anm_anmeldung JOIN tpl_feld_in_seite ON anm_anmeldung.anmeldung_ID = tpl_feld_in_seite.feldurl ) WHERE tpl_feld_in_seite.feldname LIKE &amp;#039;SP_BILD_D&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfügen der Bilder in die Personaltabelle (vorher Spalte image anlegen)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
update personaldb4,personalbildtmp set personaldb4.image = personalbildtmp.image where personalbildtmp.uid = personaldb4.uid&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SCHLAGWORTE PERSONAL&lt;br /&gt;
&lt;br /&gt;
Über SQL alle Schlagworte zum Pool 69 (Personal) + Name&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT swp_sw_in_swp.schlagwort_ID, sw_schlagworte.name FROM ( swp_sw_in_swp JOIN sw_schlagworte ON swp_sw_in_swp.schlagwort_ID = sw_schlagworte.schlagwort_ID ) WHERE swp_sw_in_swp.sw_pool_ID = 69&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Gefundene Schlagworte in eigene Typo Tabelle (über csv Export - Import)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=825</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=825"/>
		<updated>2007-05-30T15:12:14Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Todos Linux Skript:&lt;br /&gt;
# Sonderzeichen austauschen bzw. escapen (,-&amp;gt; chr(44) ; Zeilenumbruch - &amp;gt; chr(10); &amp;quot;&lt;br /&gt;
# recode ISO_8859-1..utf-8&lt;br /&gt;
# Tabelle mit den Feldern anlegen (tblFields)&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problemstellung: Export von Datenstrukturen aus Infosite (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur.&lt;br /&gt;
&lt;br /&gt;
Allgemeines Vorgehen:&lt;br /&gt;
&lt;br /&gt;
# Datenbankstruktur prinzipiell aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten zu bekommen&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039; (die Felder liegen nicht als DB-Felder vor sondern sind als Daten in der Tabelle aufgeführt) und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
Komma am Ende der letzten Zeile löschen:&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
&lt;br /&gt;
Komplettes Skript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
rpl -q &amp;quot;&amp;#039;&amp;quot; &amp;quot;&amp;quot; personaldb3.csv&lt;br /&gt;
awk -F &amp;quot;$&amp;quot; &amp;#039;{print $2}&amp;#039; personaldb3.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;CREATE TABLE personal (&amp;quot; &amp;gt; personal.sql&lt;br /&gt;
cat insert.sql &amp;gt;&amp;gt; personal.sql&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
echo &amp;quot;);&amp;quot; &amp;gt;&amp;gt; personal1.sql&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
Abfrage von allen Personalbildern&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT anm_anmeldung.seiten_location, tpl_feld_in_seite.seiten_ID FROM ( anm_anmeldung JOIN tpl_feld_in_seite ON anm_anmeldung.anmeldung_ID = tpl_feld_in_seite.feldurl ) WHERE tpl_feld_in_seite.feldname LIKE &amp;#039;SP_BILD_D&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfügen der Bilder in die Personaltabelle (vorher Spalte image anlegen)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
update personaldb4,personalbildtmp set personaldb4.image = personalbildtmp.image where personalbildtmp.uid = personaldb4.uid&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=824</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=824"/>
		<updated>2007-05-30T09:44:15Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Todos Linux Skript:&lt;br /&gt;
# Sonderzeichen austauschen bzw. escapen (,-&amp;gt; chr(44) ; Zeilenumbruch - &amp;gt; chr(10); &amp;quot;&lt;br /&gt;
# recode ISO_8859-1..utf-8&lt;br /&gt;
# Tabelle mit den Feldern anlegen (tblFields)&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problemstellung: Export von Datenstrukturen aus Infosite (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur.&lt;br /&gt;
&lt;br /&gt;
Allgemeines Vorgehen:&lt;br /&gt;
&lt;br /&gt;
# Datenbankstruktur prinzipiell aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten zu bekommen&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039; (die Felder liegen nicht als DB-Felder vor sondern sind als Daten in der Tabelle aufgeführt) und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
Komma am Ende der letzten Zeile löschen:&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
&lt;br /&gt;
Komplettes Skript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
rpl -q &amp;quot;&amp;#039;&amp;quot; &amp;quot;&amp;quot; personaldb3.csv&lt;br /&gt;
awk -F &amp;quot;$&amp;quot; &amp;#039;{print $2}&amp;#039; personaldb3.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;CREATE TABLE personal (&amp;quot; &amp;gt; personal.sql&lt;br /&gt;
cat insert.sql &amp;gt;&amp;gt; personal.sql&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
echo &amp;quot;);&amp;quot; &amp;gt;&amp;gt; personal1.sql&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=823</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=823"/>
		<updated>2007-05-30T09:41:12Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Todos Linux Skript:&lt;br /&gt;
# Sonderzeichen austauschen bzw. escapen (,-&amp;gt; chr(44) ; Zeilenumbruch - &amp;gt; chr(10); &amp;quot;&lt;br /&gt;
# recode ISO_8859-1..utf-8&lt;br /&gt;
# Tabelle mit den Feldern anlegen (tblFields)&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problemstellung: Export von Datenstrukturen aus Infosite (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur.&lt;br /&gt;
&lt;br /&gt;
Allgemeines Vorgehen:&lt;br /&gt;
&lt;br /&gt;
# Datenbankstruktur prinzipiell aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten zu bekommen&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039; (die Felder liegen nicht als DB-Felder vor sondern sind als Daten in der Tabelle aufgeführt) und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
Komma am Ende der letzten Zeile löschen:&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
&lt;br /&gt;
Komplettes Skript:&lt;br /&gt;
&lt;br /&gt;
rpl &amp;quot;&amp;#039;&amp;quot; &amp;quot;&amp;quot; personaldb3.csv&lt;br /&gt;
awk -F &amp;quot;$&amp;quot; &amp;#039;{print $2}&amp;#039; personaldb3.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;CREATE TABLE personal (&amp;quot; &amp;gt; personal.sql&lt;br /&gt;
cat insert.sql &amp;gt;&amp;gt; personal.sql&lt;br /&gt;
sed &amp;#039;$ s/,//&amp;#039; personal.sql &amp;gt; personal1.sql&lt;br /&gt;
echo &amp;quot;);&amp;quot; &amp;gt;&amp;gt; personal1.sql&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=822</id>
		<title>HfWU - Datenexport und -import mit awk</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=HfWU_-_Datenexport_und_-import_mit_awk&amp;diff=822"/>
		<updated>2007-05-30T08:32:05Z</updated>

		<summary type="html">&lt;p&gt;193.196.133.70: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Todos&lt;br /&gt;
Zeilenumbrüche mit reg. Ausdruck rausschmeißen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Problemstellung: Export von Datenstrukturen aus Infosite (z.B. Personallisten) und -import bzw. Konvertierung in vorgegebene Datenstruktur.&lt;br /&gt;
&lt;br /&gt;
Allgemeines Vorgehen:&lt;br /&gt;
&lt;br /&gt;
# Datenbankstruktur prinzipiell aufbauen.&lt;br /&gt;
# Generierung von &amp;#039;&amp;#039;&amp;#039;SQL - Abfragen auf die Infosite Datenbank&amp;#039;&amp;#039;&amp;#039; um die Daten zu bekommen&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen der vorhanden Felder&amp;#039;&amp;#039;&amp;#039; (die Felder liegen nicht als DB-Felder vor sondern sind als Daten in der Tabelle aufgeführt) und Generierung eines sql - Files mit den Notwendigen Statements zum erzeugen der DB-Felder&lt;br /&gt;
# Erstellen der Tabelle (evt. von Hand manipulieren)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Auslesen aller uids&amp;#039;&amp;#039;&amp;#039; und generieren eines &amp;#039;&amp;#039;&amp;#039;insert-uid.sql&amp;#039;&amp;#039;&amp;#039; Files&lt;br /&gt;
# Erstellen der Datensätze (nur die uids, alle anderen Felder sind leer)&lt;br /&gt;
# awk-Skript zum &amp;#039;&amp;#039;&amp;#039;Updaten der Datensätze&amp;#039;&amp;#039;&amp;#039; mit den restlichen Daten (dazu die uids für den where Clause nutzen) -&amp;gt; &amp;#039;&amp;#039;&amp;#039;update.sql&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Ausführen dieses Datensatzes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Mitschrieb:&lt;br /&gt;
----------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print $2}&amp;#039; results.csv | sort | uniq | grep &amp;quot;SP&amp;quot; | awk &amp;#039;{print $1,&amp;quot;VARCHAR(255)&amp;quot;,&amp;quot;,\\&amp;quot;}&amp;#039; &amp;gt; insert.sql&lt;br /&gt;
&lt;br /&gt;
-F gibt den Feldtrenner # an, Spalte2 aus results.csv ausgeben | sortieren | doppelte raus | nur die mit SP (Felder)&lt;br /&gt;
&lt;br /&gt;
dann noch manuell&lt;br /&gt;
create table addr_temp (&lt;br /&gt;
und am ende ) eingefügt&lt;br /&gt;
&lt;br /&gt;
 alter table addr_temp uid varchar(255);&lt;br /&gt;
&lt;br /&gt;
 sort -n -t# +3 results1.csv&lt;br /&gt;
&lt;br /&gt;
 rpl &amp;quot;sp_auto_&amp;quot; &amp;quot;&amp;quot; results1.csv&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; &amp;#039;{print &amp;quot;insert into addr_tmp uid values &amp;quot;$4}&amp;#039; results1.csv  | sort | uniq&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 awk -F &amp;quot;#&amp;quot; {&amp;#039;print &amp;quot;update addr_temp SET &amp;quot;$2 &amp;quot;=\&amp;quot;&amp;quot;$3&amp;quot;\&amp;quot;&amp;quot; &amp;quot; where uid=\&amp;quot;&amp;quot;$4 &amp;quot;\&amp;quot; ;&amp;quot;}&amp;#039; results1.csv &amp;gt; update_values.sql&lt;/div&gt;</summary>
		<author><name>193.196.133.70</name></author>
	</entry>
</feed>