source: trunk/admin/aggiornadb.php@ 298

Last change on this file since 298 was 298, checked in by roby, 5 years ago
File size: 11.5 KB
Line 
1<?php
2@require_once("config.php");
3 try{
4 $dbi = new PDO("mysql:host=$dbhost;charset=latin1", $dbuname, $dbpass, array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
5 $sql = "use $dbname";
6 $dbi->exec($sql);
7 }
8 catch(PDOException $e)
9 {
10 die( $sql . "<br>" . $e->getMessage());
11 }
12###############
13function aggiorna($sql,$dbi){
14 $new=0;
15 try{
16 $res = $dbi->prepare("$sql");
17 $res->execute();
18 }
19 catch(PDOException $e)
20 {
21 echo $sql . "<br>" . $e->getMessage();
22 return 0;
23 }
24 return 1;
25}
26$sql="alter table `soraldo_config` change column if exists `Versione` `versione` int(3)";
27$ret=aggiorna($sql,$dbi);
28if($ret) {$vifn='if not exists';$vifs='if exists';} else {$vifn='';$vifs='';}
29
30$num=1;
31$sql="alter table `soraldo_config` change column $vifs `Versione` `versione` int(3)";
32$ret=aggiorna($sql,$dbi);
33if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
34$sql="ALTER TABLE `soraldo_ele_gruppo` ADD $vifn `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
35$ret=aggiorna($sql,$dbi);
36if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
37$sql="ALTER TABLE `soraldo_ele_voti_gruppo` ADD $vifn `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
38$ret=aggiorna($sql,$dbi);
39if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
40$sql="ALTER TABLE `soraldo_ele_lista` ADD $vifn `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_gruppo`";
41$ret=aggiorna($sql,$dbi);
42if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
43$sql="ALTER TABLE `soraldo_ele_lista` ADD $vifn `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
44$ret=aggiorna($sql,$dbi);
45if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
46$sql="ALTER TABLE `soraldo_ele_voti_lista` ADD $vifn `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
47$ret=aggiorna($sql,$dbi);
48if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
49$sql="ALTER TABLE `soraldo_ele_voti_ref` ADD $vifn `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
50$ret=aggiorna($sql,$dbi);
51if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
52$sql="ALTER TABLE `soraldo_ele_voti_candidati` ADD $vifn `num_cand` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
53$ret=aggiorna($sql,$dbi);
54if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
55$sql="ALTER TABLE `soraldo_ele_candidati` ADD $vifn `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_lista`";
56$ret=aggiorna($sql,$dbi);
57if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
58$sql="ALTER TABLE `soraldo_ele_voti_ref` DROP INDEX $vifs `id_cons`; ";
59$ret=aggiorna($sql,$dbi);
60if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
61$sql="ALTER TABLE `soraldo_ele_voti_ref` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
62$ret=aggiorna($sql,$dbi);
63if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Aggiornato<br>";
64$sql="ALTER TABLE `soraldo_ele_voti_lista` DROP INDEX $vifs `id_cons`";
65$ret=aggiorna($sql,$dbi);
66if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
67$sql="ALTER TABLE `soraldo_ele_voti_lista` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_lista`) USING BTREE";
68$ret=aggiorna($sql,$dbi);
69if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
70$sql="ALTER TABLE `soraldo_ele_voti_gruppo` DROP INDEX $vifs `id_cons`";
71$ret=aggiorna($sql,$dbi);
72if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
73$sql="ALTER TABLE `soraldo_ele_voti_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_gruppo`) USING BTREE";
74$ret=aggiorna($sql,$dbi);
75if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
76$sql="ALTER TABLE `soraldo_ele_voti_candidati` DROP INDEX $vifs `id_cons`";
77$ret=aggiorna($sql,$dbi);
78if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
79$sql="ALTER TABLE `soraldo_ele_voti_candidati` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_cand`) USING BTREE";
80$ret=aggiorna($sql,$dbi);
81if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
82$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX $vifs `id_cons`";
83$ret=aggiorna($sql,$dbi);
84if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
85$sql="ALTER TABLE `soraldo_ele_lista` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
86$ret=aggiorna($sql,$dbi);
87if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
88$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX $vifs `PRIMARY`";
89$ret=aggiorna($sql,$dbi);
90if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
91$sql="ALTER TABLE `soraldo_ele_lista` ADD PRIMARY KEY (`id_lista`) USING BTREE";
92$ret=aggiorna($sql,$dbi);
93if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
94$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX $vifs `id_cons`";
95$ret=aggiorna($sql,$dbi);
96if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
97$sql="ALTER TABLE `soraldo_ele_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_circ`) USING BTREE";
98$ret=aggiorna($sql,$dbi);
99if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
100$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX $vifs `PRIMARY`";
101$ret=aggiorna($sql,$dbi);
102if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
103$sql="ALTER TABLE `soraldo_ele_gruppo` ADD PRIMARY KEY (`id_gruppo`) USING BTREE";
104$ret=aggiorna($sql,$dbi);
105if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
106$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX $vifs `id_cons`";
107$ret=aggiorna($sql,$dbi);
108if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
109$sql="ALTER TABLE `soraldo_ele_candidati` ADD INDEX `id_cons` (`id_cons`, `id_lista`) USING BTREE";
110$ret=aggiorna($sql,$dbi);
111if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
112$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX $vifs `PRIMARY`";
113$ret=aggiorna($sql,$dbi);
114if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato<br>";
115$sql="ALTER TABLE `soraldo_ele_candidati` ADD PRIMARY KEY (`id_cand`) USING BTREE";
116$ret=aggiorna($sql,$dbi);
117if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
118$sql="ALTER TABLE `soraldo_ele_sezioni` ADD $vifn `colore` VARCHAR(50) NULL AFTER `solo_lista`";
119$ret=aggiorna($sql,$dbi);
120if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
121$sql="CREATE TABLE if not exists`soraldo_ele_controlli` ( `id_cons` INT(11) NOT NULL , `id_sez` INT(11) NOT NULL , `tipo` VARCHAR(10) NOT NULL , `id` INT(11) NOT NULL , INDEX `sezione` (`id_sez`)) ENGINE = MyISAM";
122$ret=aggiorna($sql,$dbi);
123if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
124$sql="update `soraldo_ele_voti_gruppo` as t1 left join `soraldo_ele_gruppo` as t2 on t1.id_gruppo=t2.id_gruppo set t1.num_gruppo=t2.num_gruppo;";
125$ret=aggiorna($sql,$dbi);
126if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
127###############
128
129
130 $new=0;
131 try{
132 $sql = "SELECT * FROM ".$prefix."_view_sezione limit 0,1";
133 $res = $dbi->prepare("$sql");
134 $res->execute();
135 }
136 catch(PDOException $e)
137 {
138 $new=1;
139 $sql = "CREATE VIEW `soraldo_view_sezione` AS select
140 `t1`.`id_cons` AS `id_cons`,
141 `t1`.`id_sez` AS `id_sez`,
142 `t1`.`num_sez` AS `num_sez`,
143 `t2`.`id_sede` AS `id_sede`,
144 `t3`.`id_circ` AS `id_circ`,
145 `t3`.`num_circ` AS `num_circ`,
146 `t3`.`descrizione` AS `descrizione`
147 from ((`soraldo_ele_circoscrizione` `t3`
148 join `soraldo_ele_sede` `t2`)
149 join `soraldo_ele_sezioni` `t1`)
150 where (`t3`.`id_circ` = `t2`.`id_circ`)
151 and (`t2`.`id_sede` = `t1`.`id_sede`)";
152 $res = $dbi->prepare("$sql");
153 $res->execute();
154 }
155 if($new) echo "Creata la vista per le sezioni<br>";
156 else echo "La vista per le sezioni Ú già presente<br>";
157
158 $new=0;
159 try{
160 $sql = "SELECT * FROM ".$prefix."_view_candidato limit 0,1";
161 $res = $dbi->prepare("$sql");
162 $res->execute();
163 }
164 catch(PDOException $e)
165 {
166 $new=1;
167 $sql = "CREATE VIEW `soraldo_view_candidato` AS select
168 `t3`.`id_cons` AS `id_cons`,
169 `t3`.`id_sez` AS `id_sez`,
170 `t4`.`id_lista` AS `id_lista`,
171 `t4`.`num_lista` AS `num_lista`,
172 `t3`.`num_sez` AS `num_sez`,
173 `t1`.`num_cand` AS `num_cand`,
174 concat(`t1`.`cognome`,' ',`t1`.`nome`) AS `descrizione`,
175 `t2`.`voti` AS `voti`
176 from (((`soraldo_ele_candidati` `t1`
177 join `soraldo_ele_voti_candidati` `t2`)
178 join `soraldo_ele_sezioni` `t3`)
179 join `soraldo_ele_lista` `t4`)
180 where ((`t1`.`id_lista` = `t4`.`id_lista`)
181 and (`t1`.`id_cand` = `t2`.`id_cand`)
182 and (`t2`.`id_sez` = `t3`.`id_sez`))";
183 $res = $dbi->prepare("$sql");
184 $res->execute();
185 }
186 if($new) echo "Creata la vista per i candidati<br>";
187 else echo "La vista per i candidati Ú già presente<br>";
188 $new=0;
189 try{
190 $sql = "SELECT * FROM ".$prefix."_view_lista limit 0,1";
191 $res = $dbi->prepare("$sql");
192 $res->execute();
193 }
194 catch(PDOException $e)
195 {
196 $new=1;
197 $sql = "CREATE VIEW `soraldo_view_lista` AS select
198 `t1`.`id_cons` AS `id_cons`,
199 `t1`.`id_sez` AS `id_sez`,
200 `t1`.`num_sez` AS `num_sez`,
201 `t2`.`id_lista` AS `id_lista`,
202 `t2`.`num_lista` AS `num_lista`,
203 `t2`.`descrizione` AS `descrizione`,
204 `t4`.`id_gruppo` AS `id_gruppo`,
205 `t4`.`num_gruppo` AS `num_gruppo`,
206 `t4`.`descrizione` AS `desgruppo`,
207 `t3`.`voti` AS `voti`
208 from (((`soraldo_ele_sezioni` `t1`
209 join `soraldo_ele_lista` `t2`)
210 join `soraldo_ele_voti_lista` `t3`)
211 join `soraldo_ele_gruppo` `t4`)
212 where ((`t1`.`id_sez` = `t3`.`id_sez`)
213 and (`t2`.`id_lista` = `t3`.`id_lista`)
214 and (`t2`.`id_gruppo` = `t4`.`id_gruppo`))";
215 $res = $dbi->prepare("$sql");
216 $res->execute();
217 }
218 if($new) echo "Creata la vista per le liste<br>";
219 else echo "La vista per le liste Ú già presente<br>";
220 $new=0;
221
222 try{
223 $sql = "SELECT * FROM ".$prefix."_view_gruppo limit 0,1";
224 $res = $dbi->prepare("$sql");
225 $res->execute();
226 }
227 catch(PDOException $e)
228 {
229 $new=1;
230 $sql = "CREATE VIEW `soraldo_view_gruppo` AS select
231 `t1`.`id_cons` AS `id_cons`,
232 `t1`.`id_sez` AS `id_sez`,
233 `t1`.`num_sez` AS `num_sez`,
234 `t2`.`id_gruppo` AS `id_gruppo`,
235 `t2`.`num_gruppo` AS `num_gruppo`,
236 `t2`.`descrizione` AS `descrizione`,
237 `t3`.`voti` AS `voti`
238 from ((`soraldo_ele_sezioni` `t1`
239 join `soraldo_ele_gruppo` `t2`)
240 join `soraldo_ele_voti_gruppo` `t3`)
241 where ((`t1`.`id_sez` = `t3`.`id_sez`)
242 and (`t2`.`id_gruppo` = `t3`.`id_gruppo`))";
243 $res = $dbi->prepare("$sql");
244 $res->execute();
245 }
246 if($new) echo "Creata la vista per i gruppi<br>";
247 else echo "La vista per i gruppi Ú già presente<br>";
248
249
250
251?>
Note: See TracBrowser for help on using the repository browser.