false, PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
$sql = "use $dbname";
$dbi->exec($sql);
}
catch(PDOException $e)
{
die( $sql . "
" . $e->getMessage());
}
###############
function aggiorna($sql,$dbi,$sql2){
$new=0;
try{
$res = $dbi->prepare("$sql");
$res->execute();
}
catch(PDOException $e)
{
if($sql2){
$res = $dbi->prepare("$sql2");
$res->execute();
} else return 0;
}
return 1;
}
$sql="SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = '$dbname' AND COLUMN_NAME = 'Versione'";
$res = $dbi->prepare("$sql");
$res->execute();
if($res->rowCount())
{
$sql="select versione from `soraldo_config`";
$sql2="alter table `soraldo_config` change column `Versione` `versione` int(3)";
$ret=aggiorna($sql,$dbi,$sql2);
}
$num=1;
#$sql="alter table `soraldo_config` change column `Versione` `versione` int(3)";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_gruppo` ADD `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_gruppo` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_lista` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_gruppo`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_lista` ADD `num_circ` INT(2) UNSIGNED NOT NULL AFTER `id_circ`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_lista` ADD `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_ref` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_candidati` ADD `num_cand` INT(2) UNSIGNED NOT NULL AFTER `id_sez`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_candidati` ADD `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_lista`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_ref` DROP INDEX `id_cons`; ";
$sql2="ALTER TABLE `soraldo_ele_voti_ref` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$sql="ALTER TABLE `soraldo_ele_voti_ref` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_lista` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_voti_lista` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_lista`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$sql="ALTER TABLE `soraldo_ele_voti_lista` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_lista`) USING BTREE";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_gruppo` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_voti_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_gruppo`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$sql="ALTER TABLE `soraldo_ele_voti_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_gruppo`) USING BTREE";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_voti_candidati` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_voti_candidati` ADD INDEX `id_cons` (`id_cons`, `id_sez`, `id_cand`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_lista` ADD INDEX `id_cons` (`id_cons`, `id_gruppo`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_lista` DROP INDEX `PRIMARY`";
$sql2="ALTER TABLE `soraldo_ele_lista` ADD PRIMARY KEY (`id_lista`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_gruppo` ADD INDEX `id_cons` (`id_cons`, `id_circ`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_gruppo` DROP INDEX `PRIMARY`";
$sql2="ALTER TABLE `soraldo_ele_gruppo` ADD PRIMARY KEY (`id_gruppo`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX `id_cons`";
$sql2="ALTER TABLE `soraldo_ele_candidati` ADD INDEX `id_cons` (`id_cons`, `id_lista`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_candidati` DROP INDEX `PRIMARY`";
$sql2="ALTER TABLE `soraldo_ele_candidati` ADD PRIMARY KEY (`id_cand`) USING BTREE";
$ret=aggiorna($sql,$dbi,$sql2);
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo $num++.") Index eliminato
";
#$ret=aggiorna($sql,$dbi);
#if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$sql="ALTER TABLE `soraldo_ele_sezioni` ADD `colore` VARCHAR(50) NULL AFTER `solo_lista`";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$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";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$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;";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
$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;";
$ret=aggiorna($sql,$dbi,'');
if(!$ret) echo "
".$num++.") Fallito: $sql"; else echo "
".$num++.") Aggiornato
";
?>