source: trunk/admin/aggiornadb.php@ 336

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