cleanup C4 dbupdates

This commit is contained in:
Harald Bamberger
2024-11-21 15:14:13 +01:00
parent 8eb7d18ff9
commit cdc9e08cd0
3 changed files with 25 additions and 56 deletions
@@ -1,67 +1,36 @@
<?php
if (!$result = @$db->db_query("SELECT to_regclass('dashboard.tbl_bookmark')"))
if ($result = @$db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_bookmark' AND table_schema='dashboard'"))
{
if (!$db->db_query("BEGIN;"))
if($db->db_num_rows($result) == 0)
{
echo '<strong>wasnt able to start transaction for 41134_C4_bookmark_dashboardWidget: ' . $db->db_last_error() . '</strong><br>';
}
$qry = "
CREATE TABLE IF NOT EXISTS dashboard.tbl_bookmark(
bookmark_id BIGINT PRIMARY KEY,
uid VARCHAR(255) NOT NULL,
url VARCHAR(511) NOT NULL,
title VARCHAR(255) NOT NULL,
tag VARCHAR(255) NULL,
insertamum TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
insertvon VARCHAR(255) NULL REFERENCES public.tbl_benutzer(uid),
updateamum TIMESTAMP NULL,
updatevon VARCHAR(255) NULL REFERENCES public.tbl_benutzer(uid)
);
$qry = "
CREATE TABLE IF NOT EXISTS dashboard.tbl_bookmark(
bookmark_id BIGSERIAL PRIMARY KEY,
uid VARCHAR(255) NOT NULL,
url VARCHAR(511) NOT NULL,
title VARCHAR(255) NOT NULL,
tag VARCHAR(255) NULL,
insertamum TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
insertvon VARCHAR(255) NULL REFERENCES public.tbl_benutzer(uid),
updateamum TIMESTAMP NULL,
updatevon VARCHAR(255) NULL REFERENCES public.tbl_benutzer(uid)
);
ALTER TABLE dashboard.tbl_bookmark ADD CONSTRAINT tbl_bookmark_fk FOREIGN KEY(uid) REFERENCES public.tbl_benutzer(uid);
ALTER TABLE dashboard.tbl_bookmark ADD CONSTRAINT tbl_bookmark_fk FOREIGN KEY(uid) REFERENCES public.tbl_benutzer(uid);
CREATE SEQUENCE IF NOT EXISTS dashboard.tbl_bookmark_sequence
AS BIGINT
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
START WITH 1
CACHE 1
OWNED BY dashboard.tbl_bookmark.bookmark_id;
GRANT SELECT, INSERT, UPDATE, DELETE ON dashboard.tbl_bookmark TO vilesci;
GRANT SELECT, INSERT, UPDATE, DELETE ON dashboard.tbl_bookmark TO web;
GRANT SELECT, UPDATE ON dashboard.tbl_bookmark_bookmark_id_seq TO vilesci;
GRANT SELECT, UPDATE ON dashboard.tbl_bookmark_bookmark_id_seq TO web;
";
ALTER TABLE dashboard.tbl_bookmark ALTER COLUMN bookmark_id SET DEFAULT nextval('dashboard.tbl_bookmark_sequence ');
GRANT SELECT, INSERT, UPDATE, DELETE ON dashboard.tbl_bookmark TO vilesci;
GRANT SELECT, INSERT, UPDATE, DELETE ON dashboard.tbl_bookmark TO web;
GRANT SELECT, UPDATE ON dashboard.tbl_bookmark_sequence TO vilesci;
GRANT SELECT, UPDATE ON dashboard.tbl_bookmark_sequence TO web;
";
if (!$db->db_query($qry))
{
// Rollback
if (!$db->db_query("ROLLBACK;"))
if (!$db->db_query($qry))
{
echo '<strong>wasnt able to rollback: ' . $db->db_last_error() . '</strong><br>';
}
else
{
echo '<strong>ROLLED BACK 41134_C4_bookmark_dashboardWidget</strong><br>';
echo '<strong>error occurred during tbl_bookmark creation: ' . $db->db_last_error() . '</strong><br>';
}
echo '<strong>error occurred during tbl_bookmark creation: ' . $db->db_last_error() . '</strong><br>';
}
else
{
// Commit
if (!$db->db_query("COMMIT;"))
else
{
echo '<strong>wasnt able to commit: ' . $db->db_last_error() . '</strong><br>';
}
else
{
echo '<strong>COMMITED 41134_C4_bookmark_dashboardWidget</strong><br>';
echo '<br>dashboard.tbl_bookmark successfully created';
}
echo '<br>dashboard.tbl_bookmark and dashboard.tbl_bookmark_sequence was created';
}
}