installation von extensions auf mehreren servern ermoeglicht

This commit is contained in:
ma0048
2021-05-05 13:37:19 +02:00
parent d29d80fc59
commit 43ff675b5e
6 changed files with 66 additions and 20 deletions
+29 -3
View File
@@ -956,13 +956,39 @@ if ($result = @$db->db_query("SELECT conname FROM pg_constraint WHERE conname =
// UNIQUE INDEX uidx_extensions_name_version
if ($result = $db->db_query("SELECT 0 FROM pg_class WHERE relname = 'uidx_extensions_name_version'"))
{
if ($db->db_num_rows($result) == 0)
if ($db->db_num_rows($result) == 1)
{
$qry = 'CREATE UNIQUE INDEX uidx_extensions_name_version ON system.tbl_extensions USING btree (name, version);';
$qry = 'DROP INDEX system.uidx_extensions_name_version';
if (!$db->db_query($qry))
echo '<strong>uidx_extensions_name_version '.$db->db_last_error().'</strong><br>';
else
echo '<br>Created unique uidx_extensions_name_version';
echo '<br>Dropped unique uidx_extensions_name_version';
}
}
// stud_selfservice boolean fuer public.tbl_vorlage
if(!@$db->db_query("SELECT server_kurzbz FROM system.tbl_extensions LIMIT 1"))
{
$qry = "ALTER TABLE system.tbl_extensions ADD COLUMN server_kurzbz varchar(64);
ALTER TABLE system.tbl_extensions ADD CONSTRAINT fk_extensios_server_kurzbz FOREIGN KEY (server_kurzbz) REFERENCES system.tbl_server(server_kurzbz) ON UPDATE CASCADE ON DELETE RESTRICT;";
if(!$db->db_query($qry))
echo '<strong>App: '.$db->db_last_error().'</strong><br>';
else
echo '<br>Neue Spalte server_kurzbz in system.tbl_extensions hinzugefügt';
}
// UNIQUE INDEX uidx_extensions_name_version_server
if ($result = $db->db_query("SELECT 0 FROM pg_class WHERE relname = 'uidx_extensions_name_version_server'"))
{
if ($db->db_num_rows($result) == 0)
{
$qry = 'CREATE UNIQUE INDEX uidx_extensions_name_version_server ON system.tbl_extensions USING btree (name, version, server_kurzbz);';
if (!$db->db_query($qry))
echo '<strong>uidx_extensions_name_version_server '.$db->db_last_error().'</strong><br>';
else
echo '<br>Created unique uidx_extensions_name_version_server';
}
}