From 68099d2a1bbcb11947ed1d6a31d4e0851bc81622 Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Tue, 22 Mar 2016 09:08:48 +0100 Subject: [PATCH] bugfix --- system/dbupdate_eine_uid.php | 86 ++++++++++++++++++------------------ 1 file changed, 44 insertions(+), 42 deletions(-) diff --git a/system/dbupdate_eine_uid.php b/system/dbupdate_eine_uid.php index bdcab278d..68ab891be 100644 --- a/system/dbupdate_eine_uid.php +++ b/system/dbupdate_eine_uid.php @@ -25,7 +25,7 @@ require_once('../include/basis_db.class.php'); $db = new basis_db(); echo ' - CheckSystem + CS-EineUid @@ -43,57 +43,59 @@ if(!isset($_POST["action"]) || $_POST["action"] != "start") echo "

"; echo "
"; - die(""); } - -echo '

Systemcheck!

'; -echo '

DB-Updates!

'; - - -// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen -echo '

Pruefe Tabellen und Attribute!

'; - - - - - - -//prestudent_id hinzufügen und student_uid auf prestudent_id umhängen -if(!$result = @$db->db_query("SELECT prestudent_id FROM bis.tbl_bisio LIMIT 1;")) +else { - //spalte einfuegen - $add_qry = 'BEGIN; ALTER TABLE bis.tbl_bisio ADD COLUMN prestudent_id int; - UPDATE bis.tbl_bisio SET prestudent_id = (SELECT prestudent_id FROM public.tbl_student WHERE student_uid=tbl_bisio.student_uid);'; - $db->db_query($add_qry); - //constraints: prestudent_id FK, prestudent_id NOT NULL - $constraint_qry = 'ALTER TABLE bis.tbl_bisio ALTER COLUMN prestudent_id SET NOT NULL; - ALTER TABLE bis.tbl_bisio ADD CONSTRAINT prestudent_id FOREIGN KEY (prestudent_id) REFERENCES public.tbl_prestudent (prestudent_id);'; + echo '

Systemcheck!

'; + echo '

DB-Updates!

'; - if(!$db->db_query($constraint_qry)) + + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen + echo '

Pruefe Tabellen und Attribute!

'; + + + + + + + //prestudent_id hinzufügen und student_uid auf prestudent_id umhängen + if(!$result = @$db->db_query("SELECT prestudent_id FROM bis.tbl_bisio LIMIT 1;")) { - $db->db_query("ROLLBACK;"); - echo 'bis.tbl_bisio: '.$db->db_last_error().'
'; - } - else - { - $db->db_query("COMMIT;"); - echo ' bis.tbl_bisio: Spalte prestudent_id hinzugefuegt!
'; - echo ' bis.tbl_bisio: Spalte student_uid auf prestudent_id geändert!
'; - echo ' bis.tbl_bisio: Spalte prestudent_id constraints eingefuegt!
'; + //spalte einfuegen + $add_qry = 'BEGIN; ALTER TABLE bis.tbl_bisio ADD COLUMN prestudent_id int; + UPDATE bis.tbl_bisio SET prestudent_id = (SELECT prestudent_id FROM public.tbl_student WHERE student_uid=tbl_bisio.student_uid);'; + $db->db_query($add_qry); - //student_uid löschen - if($result = @$db->db_query("SELECT student_uid FROM bis.tbl_bisio LIMIT 1;")) + //constraints: prestudent_id FK, prestudent_id NOT NULL + $constraint_qry = 'ALTER TABLE bis.tbl_bisio ALTER COLUMN prestudent_id SET NOT NULL; + ALTER TABLE bis.tbl_bisio ADD CONSTRAINT prestudent_id FOREIGN KEY (prestudent_id) REFERENCES public.tbl_prestudent (prestudent_id);'; + + if(!$db->db_query($constraint_qry)) { - $qry = 'ALTER TABLE bis.tbl_bisio DROP COLUMN student_uid;'; + $db->db_query("ROLLBACK;"); + echo 'bis.tbl_bisio: '.$db->db_last_error().'
'; + } + else + { + $db->db_query("COMMIT;"); + echo ' bis.tbl_bisio: Spalte prestudent_id hinzugefuegt!
'; + echo ' bis.tbl_bisio: Spalte student_uid auf prestudent_id geändert!
'; + echo ' bis.tbl_bisio: Spalte prestudent_id constraints eingefuegt!
'; - if(!$db->db_query($qry)) + //student_uid löschen + if($result = @$db->db_query("SELECT student_uid FROM bis.tbl_bisio LIMIT 1;")) { - echo 'bis.tbl_bisio: '.$db->db_last_error().'
'; - echo 'bis.tbl_bisio: ACHTUNG! In diesem Fall sollte prestudent_id ordnungsgemäß eingetragen sein, jedoch student_uid nicht gelöscht worden sein. Das Skript erneut zu starten wird nicht funktionieren!
'; + $qry = 'ALTER TABLE bis.tbl_bisio DROP COLUMN student_uid;'; + + if(!$db->db_query($qry)) + { + echo 'bis.tbl_bisio: '.$db->db_last_error().'
'; + echo 'bis.tbl_bisio: ACHTUNG! In diesem Fall sollte prestudent_id ordnungsgemäß eingetragen sein, jedoch student_uid nicht gelöscht worden sein. Das Skript erneut zu starten wird nicht funktionieren!
'; + } + else + echo ' bis.tbl_bisio: Spalte student_uid gelöscht!
'; } - else - echo ' bis.tbl_bisio: Spalte student_uid gelöscht!
'; } } }