diff options
Diffstat (limited to 'install/upgrade.php')
-rw-r--r-- | install/upgrade.php | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/install/upgrade.php b/install/upgrade.php index d2252cb..55b4316 100644 --- a/install/upgrade.php +++ b/install/upgrade.php @@ -36,15 +36,26 @@ function lower_version($that, $new) { return false; } -if (isset($_GET['upgrade']) && lower_version($_GET['upgrade'], '0.1')) { - try { - $_pdo->query("ALTER TABLE `assignment` CHANGE `hours` `hours` FLOAT UNSIGNED NOT NULL"); - } catch (PDOException $e) { - echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); - } -} - if (isset($_GET['upgrade'])) { + + if (lower_version($_GET['upgrade'], '0.1')) { + try { + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` CHANGE `hours` `hours` FLOAT UNSIGNED NOT NULL"); + } catch (PDOException $e) { + echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); + } + } + + if (lower_version($_GET['upgrade'], '0.2.2')) { + try { + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` DROP FOREIGN KEY `assignment_ibfk_1`"); + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` ADD CONSTRAINT `assignment_ibfk_1` FOREIGN KEY (`offerId`) REFERENCES `".constants::db_prefix."offer` (`id`) ON DELETE CASCADE ON UPDATE CASCADE"); + } catch (PDOException $e) { + echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); + } + + } + echo "<br/>All done."; } ?> @@ -53,4 +64,4 @@ if (isset($_GET['upgrade'])) { <form method="GET"> <input type="text" name="upgrade" placeholder="Old version"/> <input type="submit" value="Upgrade"/> -</form>
\ No newline at end of file +</form> |