source: trunk/admin/aggiornadb.php@ 338

Last change on this file since 338 was 338, checked in by roby, 4 years ago

seconda fase di adeguamento al php 7.2
sistemazione delle funzioni di gestione delle circoscrizionali e dei collegi

File size: 7.7 KB
Line 
1<?php
2
3#implementare controllo con: SHOW INDEX FROM tua_tabella WHERE tua_tabella.tua_colonna='nome_colonna';
4@require_once("config.php");
5 try{
6 $dbi = new PDO("mysql:host=$dbhost;charset=latin1", $dbuname, $dbpass, array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
7 $sql = "use $dbname";
8 $dbi->exec($sql);
9 }
10 catch(PDOException $e)
11 {
12 die( $sql . "<br>" . $e->getMessage());
13 }
14###############
15function aggiorna($sql,$dbi,$sql2){
16 $ret=0;
17 try{
18 $res = $dbi->prepare("$sql");
19 $res->execute();
20 $ret= 1;
21 }
22 catch(PDOException $e)
23 {
24 $ret=0;
25 }
26
27 if("$sql2"!=""){
28 try{
29 $res = $dbi->prepare("$sql2");
30 $res->execute();
31 $ret=2;
32 }
33 catch(PDOException $e)
34 {
35 $ret=0;
36 }
37 }
38 return $ret;
39}
40
41
42$sql="SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = '$dbname' AND COLUMN_NAME = 'Versione'";
43 $res = $dbi->prepare("$sql");
44 $res->execute();
45if($res->rowCount())
46{
47 $sql="alter table `soraldo_config` change column `Versione` `versione` int(3)";
48 $ret=aggiorna($sql,$dbi,'');
49}
50
51$num=1;
52#$sql="alter table `soraldo_config` change column `Versione` `versione` int(3)";
53#$ret=aggiorna($sql,$dbi);
54#if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
55$sql="ALTER TABLE `soraldo_ele_gruppo` ADD `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
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_gruppo` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
59$ret=aggiorna($sql,$dbi,'');
60if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
61$sql="ALTER TABLE `soraldo_ele_lista` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_gruppo`";
62$ret=aggiorna($sql,$dbi,'');
63if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
64$sql="ALTER TABLE `soraldo_ele_lista` ADD `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
65$ret=aggiorna($sql,$dbi,'');
66if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
67$sql="ALTER TABLE `soraldo_ele_voti_lista` ADD `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
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_ref` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
71$ret=aggiorna($sql,$dbi,'');
72if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
73$sql="ALTER TABLE `soraldo_ele_voti_candidati` ADD `num_cand` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
74$ret=aggiorna($sql,$dbi,'');
75if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
76$sql="ALTER TABLE `soraldo_ele_candidati` ADD `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_lista`";
77$ret=aggiorna($sql,$dbi,'');
78if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
79$sql="ALTER TABLE `soraldo_ele_voti_ref` DROP INDEX `id_cons`; ";
80$sql2="ALTER TABLE `soraldo_ele_voti_ref` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
81$ret=aggiorna($sql,$dbi,$sql2);
82if(!$ret)
83 echo "<br>".$num++.") Fallito: $sql";
84elseif ($ret==1)
85 echo "<br>".$num++.") Index eliminato";
86else
87 echo "<br>".$num++.") Index aggiunto";
88$sql="ALTER TABLE `soraldo_ele_voti_lista` DROP INDEX `id_cons`";
89$sql2="ALTER TABLE `soraldo_ele_voti_lista` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_lista`) USING BTREE";
90$ret=aggiorna($sql,$dbi,$sql2);
91if(!$ret)
92 echo "<br>".$num++.") Fallito: $sql";
93elseif ($ret==1)
94 echo "<br>".$num++.") Index eliminato";
95else
96 echo "<br>".$num++.") Index aggiunto";
97$sql="ALTER TABLE `soraldo_ele_voti_gruppo` DROP INDEX `id_cons`";
98$sql2="ALTER TABLE `soraldo_ele_voti_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_gruppo`) USING BTREE";
99$ret=aggiorna($sql,$dbi,$sql2);
100if(!$ret)
101 echo "<br>".$num++.") Fallito: $sql";
102elseif ($ret==1)
103 echo "<br>".$num++.") Index eliminato";
104else
105 echo "<br>".$num++.") Index aggiunto";
106$sql="ALTER TABLE `soraldo_ele_voti_candidati` DROP INDEX `id_cons`";
107$sql2="ALTER TABLE `soraldo_ele_voti_candidati` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_cand`) USING BTREE";
108$ret=aggiorna($sql,$dbi,$sql2);
109if(!$ret)
110 echo "<br>".$num++.") Fallito: $sql";
111elseif ($ret==1)
112 echo "<br>".$num++.") Index eliminato";
113else
114 echo "<br>".$num++.") Index aggiunto";
115$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX `id_cons`";
116$sql2="ALTER TABLE `soraldo_ele_lista` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
117$ret=aggiorna($sql,$dbi,$sql2);
118if(!$ret)
119 echo "<br>".$num++.") Fallito: $sql";
120elseif ($ret==1)
121 echo "<br>".$num++.") Index eliminato";
122else
123 echo "<br>".$num++.") Index aggiunto";
124$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX `PRIMARY`";
125$sql2="ALTER TABLE `soraldo_ele_lista` ADD PRIMARY KEY (`id_lista`) USING BTREE";
126$ret=aggiorna($sql,$dbi,$sql2);
127if(!$ret)
128 echo "<br>".$num++.") Fallito: $sql";
129elseif ($ret==1)
130 echo "<br>".$num++.") Index eliminato";
131else
132 echo "<br>".$num++.") Index aggiunto";
133$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX `id_cons`";
134$sql2="ALTER TABLE `soraldo_ele_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_circ`) USING BTREE";
135$ret=aggiorna($sql,$dbi,$sql2);
136if(!$ret)
137 echo "<br>".$num++.") Fallito: $sql";
138elseif ($ret==1)
139 echo "<br>".$num++.") Index eliminato";
140else
141 echo "<br>".$num++.") Index aggiunto";
142$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX `PRIMARY`";
143$sql2="ALTER TABLE `soraldo_ele_gruppo` ADD PRIMARY KEY (`id_gruppo`) USING BTREE";
144$ret=aggiorna($sql,$dbi,$sql2);
145if(!$ret)
146 echo "<br>".$num++.") Fallito: $sql";
147elseif ($ret==1)
148 echo "<br>".$num++.") Index eliminato";
149else
150 echo "<br>".$num++.") Index aggiunto";
151$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX `id_cons`";
152$sql2="ALTER TABLE `soraldo_ele_candidati` ADD INDEX `id_cons` (`id_cons`, `id_lista`) USING BTREE";
153$ret=aggiorna($sql,$dbi,$sql2);
154if(!$ret)
155 echo "<br>".$num++.") Fallito: $sql";
156elseif ($ret==1)
157 echo "<br>".$num++.") Index eliminato";
158else
159 echo "<br>".$num++.") Index aggiunto";
160$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX `PRIMARY`";
161$sql2="ALTER TABLE `soraldo_ele_candidati` ADD PRIMARY KEY (`id_cand`) USING BTREE";
162$ret=aggiorna($sql,$dbi,$sql2);
163if(!$ret)
164 echo "<br>".$num++.") Fallito: $sql";
165elseif ($ret==1)
166 echo "<br>".$num++.") Index eliminato";
167else
168 echo "<br>".$num++.") Index aggiunto";
169$sql="ALTER TABLE `soraldo_ele_sezioni` ADD `colore` VARCHAR(50) NULL AFTER `solo_lista`";
170$ret=aggiorna($sql,$dbi,'');
171if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
172$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";
173$ret=aggiorna($sql,$dbi,'');
174if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
175$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;";
176$ret=aggiorna($sql,$dbi,'');
177if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
178$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;";
179$ret=aggiorna($sql,$dbi,'');
180if(!$ret) echo "<br>".$num++.") Fallito: $sql"; else echo "<br>".$num++.") Aggiornato<br>";
181
182?>
Note: See TracBrowser for help on using the repository browser.