1 | @echo off |
---|
2 | REM ------------------------------------------------ |
---|
3 | REM Konvertierung von ALKIS NAS-Format nach PosGIS - |
---|
4 | REM Teil 1: Eine neue PostGIS-Datenbank anlegen - |
---|
5 | REM ------------------------------------------------ |
---|
6 | REM |
---|
7 | REM Delete old Logfiles |
---|
8 | del ..\log_*.txt |
---|
9 | del ..\err_*.txt |
---|
10 | |
---|
11 | echo ============================================================================== |
---|
12 | REM Disclaimer |
---|
13 | echo. |
---|
14 | echo DISCLAIMER: PostNAS Skript zum Anlegen einer Datenbank. USE AT YOUR OWN RISK! |
---|
15 | echo Das Skript erzeigt eine Datenbank und spielt das PostNAS Schema ein |
---|
16 | echo |
---|
17 | echo. |
---|
18 | echo Voraussetzungen: |
---|
19 | echo - laufenden PostgreSQL 8.x Datenbank |
---|
20 | echo - Databankbenutzer mit Schreibzugriff |
---|
21 | echo - PATH Variable zu psql |
---|
22 | echo. |
---|
23 | echo Ist alles vorbereitet? |
---|
24 | echo Diese Argumente müssen übergeben werden: |
---|
25 | echo "%0 <HOST> <PORT> <DBNAME> <DBTEMPLATE> <DBUSER> <DropDB ja/nein>" |
---|
26 | echo. |
---|
27 | echo z. B. |
---|
28 | echo %0 %DBHOST% %DBPORT% alkis_import template_postgis alkis_user ja |
---|
29 | |
---|
30 | echo. |
---|
31 | echo ============================================================================== |
---|
32 | echo. |
---|
33 | REM 5 Params expected |
---|
34 | if not %5x==x goto ARGSSUPPLIED |
---|
35 | |
---|
36 | echo Die Parameter wurden nicht alle übergeben. Bitte rufen Sie das Skript mit Parametern auf. |
---|
37 | echo Das Skript wird beendet |
---|
38 | goto :PARAMETER_EMPTY |
---|
39 | |
---|
40 | :ARGSSUPPLIED |
---|
41 | set DBHOST=%1 |
---|
42 | set DBPORT=%2 |
---|
43 | set DBNAME=%3 |
---|
44 | set DBTEMPLATE=%4 |
---|
45 | set DBUSER=%5 |
---|
46 | set DROPDB=%6 |
---|
47 | echo. |
---|
48 | if %DBHOST%x==x goto PARAMETER_EMPTY |
---|
49 | if %DBPORT%x==x goto PARAMETER_EMPTY |
---|
50 | if %DBUSER%x==x goto PARAMETER_EMPTY |
---|
51 | if %DBNAME%x==x goto PARAMETER_EMPTY |
---|
52 | if %DBTEMPLATE%x==x goto PARAMETER_EMPTY |
---|
53 | if %DBUSER%x==x goto PARAMETER_EMPTY |
---|
54 | |
---|
55 | :CHOICES |
---|
56 | REM dbtype and encoding are fixed |
---|
57 | set USEDBTYPE=PostgreSQL |
---|
58 | set USEDBENC=UTF-8 |
---|
59 | echo. |
---|
60 | echo Ihre Angaben: |
---|
61 | echo Databasetype: %USEDBTYPE% |
---|
62 | echo Encoding: %USEDBENC% |
---|
63 | echo Database Host: %DBHOST% |
---|
64 | echo Database Port: %DBPORT% |
---|
65 | echo Database Name: %DBNAME% |
---|
66 | echo Database Template: %DBTEMPLATE% |
---|
67 | echo Database User: %DBUSER% |
---|
68 | echo Datenbank %DBNAME% löschen: %DROPDB% |
---|
69 | echo. |
---|
70 | echo Installation starten? |
---|
71 | echo. |
---|
72 | rem delete ARG#5 |
---|
73 | shift |
---|
74 | set /p START_INSTALL="(y)es or (n)o? " |
---|
75 | if %START_INSTALL%x==x goto CHOICES |
---|
76 | if %START_INSTALL%==y goto START_INSTALL |
---|
77 | goto PREP |
---|
78 | :START_INSTALL |
---|
79 | rem echo on |
---|
80 | |
---|
81 | :INSTPOSTGRESQL |
---|
82 | REM do these exist? |
---|
83 | psql --version 2> nul 1> nul |
---|
84 | if NOT %ERRORLEVEL% == 0 goto PGNOTFOUND |
---|
85 | |
---|
86 | if %DROPDB%==ja goto START_DROPDB |
---|
87 | if %DROPDB%==j goto START_DROPDB |
---|
88 | if %DROPDB%==yes goto START_DROPDB |
---|
89 | if %DROPDB%==y goto START_DROPDB |
---|
90 | if %DROPDB%==no goto START_CREATE |
---|
91 | goto :START_CREATE |
---|
92 | :START_DROPDB |
---|
93 | echo dropdb |
---|
94 | echo dropdb -U %DBUSER% -h %DBHOST% -p %DBPORT% %DBNAME% |
---|
95 | dropdb -U %DBUSER% -h %DBHOST% -p %DBPORT% %DBNAME% |
---|
96 | |
---|
97 | |
---|
98 | :START_CREATE |
---|
99 | echo creatingdb |
---|
100 | echo createdb -U %DBUSER% -h %DBHOST% -p %DBPORT% -T %DBTEMPLATE% -E UTF8 %DBNAME% |
---|
101 | createdb -U %DBUSER% -h %DBHOST% -p %DBPORT% -T %DBTEMPLATE% -E UTF8 %DBNAME% |
---|
102 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f alkis_PostNAS_0.6_schema.sql %DBNAME% 2>> ..\log_alkis_schema.txt |
---|
103 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f alkis_PostNAS_0.6_keytables.sql %DBNAME% 2>> ..\log_alkis_keytables.txt |
---|
104 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f nutzungsart_definition.sql %DBNAME% 2>> ..\log_alkis_nutzungsart_definition.txt |
---|
105 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f nutzungsart_metadaten.sql %DBNAME% 2>> ..\log_alkis_nutzungsart_metadaten.txt |
---|
106 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f gemeinden_definition.sql %DBNAME% 2>> ..\log_alkis_gemeinden_definition.txt |
---|
107 | psql -U %DBUSER% -h %DBHOST% -p %DBPORT% -f sichten.sql %DBNAME% 2>> ..\log_alkis_sichten.txt |
---|
108 | echo Die Datenbank wurde erzeugt. Prüfen Sie die Logdateien. |
---|
109 | goto END: |
---|
110 | |
---|
111 | |
---|
112 | |
---|
113 | :PGNOTFOUND |
---|
114 | echo Sorry, psql not found, must be in PATH-Variable, exiting... |
---|
115 | goto END |
---|
116 | |
---|
117 | :PARAMETER_EMPTY |
---|
118 | echo ============================================================================== |
---|
119 | echo Sorry, Parameter müssen übergeben werden |
---|
120 | echo Diese Argumente müssen übergeben werden: |
---|
121 | echo "%0 <HOST> <PORT> <DBNAME> <DBTEMPLATE> <DBUSER> <DropDB ja/nein>" |
---|
122 | echo. |
---|
123 | echo z. B. |
---|
124 | echo %0 %DBHOST% %DBPORT% alkis_import template_postgis alkis_user ja |
---|
125 | echo. |
---|
126 | echo ============================================================================== |
---|
127 | |
---|
128 | REM End, keep Terminal session open |
---|
129 | :END |
---|
130 | |
---|
131 | |
---|
132 | echo. |
---|
133 | pause |
---|