· 9 years ago · Nov 12, 2016, 11:52 AM
1#!/bin/bash
2# Skript: m122_Scripts/BCtoSQL.sh
3DBFILE=SIX_Bankenstamm.db
4SRCFILE="SIX_BankenstammCH.csv"
5TABLENAME="Bankenstamm"
6
7if ! [ -r $PASSWDFILE ]
8then
9 echo "Could not read $SCRFILE. Exiting..."
10 exit 1
11fi
12
13echo "Preparing database file $DBFILE now..."
14sqlite3 "$DBFILE" "DROP TABLE IF EXISTS $TABLENAME;"
15sqlite3 "$DBFILE" "CREATE TABLE $TABLENAME (SortNr INTEGER PRIMARY KEY, BCNrINTEGER, TeilnIBANTool INTEGER, PZValidierung INTEGER, BCNRIID INTEGER, Landcode TEXT, PostkontoInput TEXT, PostkontoOutput TEXT, SWIFT TEXT, emailAdresse BemerkungenfuerEntwickler TEXT, Mutationsdatum INTEGER, Hauptsitz INTEGER, BCART INTEGER, BankInstitut TEXT, SIC TEXT, eurosic INTEGER, Sprache INTEGER, KurzbezTEXT, Domizil TEXT, Postadresse TEXT, PLZ TEXT, Ort TEXT, Telefon TEXT, Fax TEXT, Vorwahl TEXT);"
16echo "Database prepared, filling..."
17
18ALL="$(grep -i -E "^(Sort-Nr.|BCNr|TEIL. IBAN-TOOL|PZ Validierung|BCNR IID|Landcode|Postkonto in|Postkonto out|SWIFT|Emailadresse Entwickler|Mutationsdatum|Hauptsitz|BC-Art|Bank / Institut|SIC|euro-sic|Sprache|Kurz.bez.|Domizil|Postadresse|PLZ|Ort|Telefon|Fax|Vorwahl):" SIX_BankenstammCH.csv | cut -d';' -f 1-25)"
19
20echo "$ALL" | while read line
21do
22 _SORT="$(echo "$line" | cut -d ';' -f1)"
23 _BCNR="$(echo "$line" | cut -d ';' -f2)"
24 _TEIL="$(echo "$line" | cut -d ';' -f3)"
25 _PZ="$(echo "$line" | cut -d ';' -f4)"
26 _BCNRIDD="$(echo "$line" | cut -d ';' -f5)"
27 _LAND="$(echo "$line" | cut -d ';' -f6)"
28 _POSTIN="$(echo "$line" | cut -d ';' -f7)"
29 _POSTOUT="$(echo "$line" | cut -d ';' -f8)"
30 _SWIFT="$(echo "$line" | cut -d ';' -f9)"
31 _EMAILADR="$(echo "$line" | cut -d ';' -f10)"
32 _MUTDA="$(echo "$line" | cut -d ';' -f11)"
33 _HAUP="$(echo "$line" | cut -d ';' -f12)"
34 _BC="$(echo "$line" | cut -d ';' -f13)"
35 _BANK="$(echo "$line" | cut -d ';' -f14)"
36 _SIC="$(echo "$line" | cut -d ';' -f15)"
37 _EURO="$(echo "$line" | cut -d ';' -f16)"
38 _SPRACHE="$(echo "$line" | cut -d ';' -f17)"
39 _KURZ="$(echo "$line" | cut -d ';' -f18)"
40 _DOMI="$(echo "$line" | cut -d ';' -f19)"
41 _POSTAD="$(echo "$line" | cut -d ';' -f20)"
42 _PLZ="$(echo "$line" | cut -d ';' -f21)"
43 _ORT="$(echo "$line" | cut -d ';' -f22)"
44 _TEL="$(echo "$line" | cut -d ';' -f23)"
45 _FAX="$(echo "$line" | cut -d ';' -f24)"
46 _VOR="$(echo "$line" | cut -d ';' -f25)"
47
48 sqlite3 "$DBFILE" "INSERT INTO $TABLENAME VALUES ('$_SORT', '_BCNR', '$_TEIL', '$_PZ', '$_BCNRIDD', '$_LAND', '$_POSTIN', '$_POSTOUT', '$_SWIFT', '$_EMAILADR', '$_MUTDA', '$_HAUP', '$_BC', '$_BANK', '$_SIC', '$_EURO', '$_SPRACHE', '$_KURZ', '$'_DOMI, '$_POSTAD', '$_PLZ', '$_ORT', '$_TEL', '$_FAX', '$_VOR');"
49 sqlite3 -header "$DBFILE" "SELECT * FROM Bankenstamm";