source: trunk/admin/aggiornadb.php@ 322

Last change on this file since 322 was 300, checked in by roby, 6 years ago
File size: 11.8 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$sql="update `soraldo_ele_voti_lista` as t1 left join `soraldo_ele_lista` as t2 on t1.id_lista=t2.id_lista set t1.num_lista=t2.num_lista;";
128$ret=aggiorna($sql,$dbi);
129if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
130###############
131
132
133 $new=0;
134 try{
135 $sql = "SELECT * FROM ".$prefix."_view_sezione limit 0,1";
136 $res = $dbi->prepare("$sql");
137 $res->execute();
138 }
139 catch(PDOException $e)
140 {
141 $new=1;
142 $sql = "CREATE VIEW `soraldo_view_sezione` AS select
143 `t1`.`id_cons` AS `id_cons`,
144 `t1`.`id_sez` AS `id_sez`,
145 `t1`.`num_sez` AS `num_sez`,
146 `t2`.`id_sede` AS `id_sede`,
147 `t3`.`id_circ` AS `id_circ`,
148 `t3`.`num_circ` AS `num_circ`,
149 `t3`.`descrizione` AS `descrizione`
150 from ((`soraldo_ele_circoscrizione` `t3`
151 join `soraldo_ele_sede` `t2`)
152 join `soraldo_ele_sezioni` `t1`)
153 where (`t3`.`id_circ` = `t2`.`id_circ`)
154 and (`t2`.`id_sede` = `t1`.`id_sede`)";
155 $res = $dbi->prepare("$sql");
156 $res->execute();
157 }
158 if($new) echo "Creata la vista per le sezioni<br>";
159 else echo "La vista per le sezioni Ú già presente<br>";
160
161 $new=0;
162 try{
163 $sql = "SELECT * FROM ".$prefix."_view_candidato limit 0,1";
164 $res = $dbi->prepare("$sql");
165 $res->execute();
166 }
167 catch(PDOException $e)
168 {
169 $new=1;
170 $sql = "CREATE VIEW `soraldo_view_candidato` AS select
171 `t3`.`id_cons` AS `id_cons`,
172 `t3`.`id_sez` AS `id_sez`,
173 `t4`.`id_lista` AS `id_lista`,
174 `t4`.`num_lista` AS `num_lista`,
175 `t3`.`num_sez` AS `num_sez`,
176 `t1`.`num_cand` AS `num_cand`,
177 concat(`t1`.`cognome`,' ',`t1`.`nome`) AS `descrizione`,
178 `t2`.`voti` AS `voti`
179 from (((`soraldo_ele_candidati` `t1`
180 join `soraldo_ele_voti_candidati` `t2`)
181 join `soraldo_ele_sezioni` `t3`)
182 join `soraldo_ele_lista` `t4`)
183 where ((`t1`.`id_lista` = `t4`.`id_lista`)
184 and (`t1`.`id_cand` = `t2`.`id_cand`)
185 and (`t2`.`id_sez` = `t3`.`id_sez`))";
186 $res = $dbi->prepare("$sql");
187 $res->execute();
188 }
189 if($new) echo "Creata la vista per i candidati<br>";
190 else echo "La vista per i candidati Ú già presente<br>";
191 $new=0;
192 try{
193 $sql = "SELECT * FROM ".$prefix."_view_lista limit 0,1";
194 $res = $dbi->prepare("$sql");
195 $res->execute();
196 }
197 catch(PDOException $e)
198 {
199 $new=1;
200 $sql = "CREATE VIEW `soraldo_view_lista` AS select
201 `t1`.`id_cons` AS `id_cons`,
202 `t1`.`id_sez` AS `id_sez`,
203 `t1`.`num_sez` AS `num_sez`,
204 `t2`.`id_lista` AS `id_lista`,
205 `t2`.`num_lista` AS `num_lista`,
206 `t2`.`descrizione` AS `descrizione`,
207 `t4`.`id_gruppo` AS `id_gruppo`,
208 `t4`.`num_gruppo` AS `num_gruppo`,
209 `t4`.`descrizione` AS `desgruppo`,
210 `t3`.`voti` AS `voti`
211 from (((`soraldo_ele_sezioni` `t1`
212 join `soraldo_ele_lista` `t2`)
213 join `soraldo_ele_voti_lista` `t3`)
214 join `soraldo_ele_gruppo` `t4`)
215 where ((`t1`.`id_sez` = `t3`.`id_sez`)
216 and (`t2`.`id_lista` = `t3`.`id_lista`)
217 and (`t2`.`id_gruppo` = `t4`.`id_gruppo`))";
218 $res = $dbi->prepare("$sql");
219 $res->execute();
220 }
221 if($new) echo "Creata la vista per le liste<br>";
222 else echo "La vista per le liste Ú già presente<br>";
223 $new=0;
224
225 try{
226 $sql = "SELECT * FROM ".$prefix."_view_gruppo limit 0,1";
227 $res = $dbi->prepare("$sql");
228 $res->execute();
229 }
230 catch(PDOException $e)
231 {
232 $new=1;
233 $sql = "CREATE VIEW `soraldo_view_gruppo` AS select
234 `t1`.`id_cons` AS `id_cons`,
235 `t1`.`id_sez` AS `id_sez`,
236 `t1`.`num_sez` AS `num_sez`,
237 `t2`.`id_gruppo` AS `id_gruppo`,
238 `t2`.`num_gruppo` AS `num_gruppo`,
239 `t2`.`descrizione` AS `descrizione`,
240 `t3`.`voti` AS `voti`
241 from ((`soraldo_ele_sezioni` `t1`
242 join `soraldo_ele_gruppo` `t2`)
243 join `soraldo_ele_voti_gruppo` `t3`)
244 where ((`t1`.`id_sez` = `t3`.`id_sez`)
245 and (`t2`.`id_gruppo` = `t3`.`id_gruppo`))";
246 $res = $dbi->prepare("$sql");
247 $res->execute();
248 }
249 if($new) echo "Creata la vista per i gruppi<br>";
250 else echo "La vista per i gruppi Ú già presente<br>";
251
252
253
254?>
Note: See TracBrowser for help on using the repository browser.