Erstellung einer Merge Tabelle
Geschrieben von: Michael Bäcker Donnerstag, den 14. Januar 2010 um 13:04 Uhr
Eine Merge Tabelle beinhaltet alle Datensätze der darin vereinten Tabellen. Um eine solche zu Erstellen, muss man die Struktur der anderen Tabellen kennen, da die Merge Tabelle auf dieser Struktur basiert. Hier ein Beispiel aus einer Rechnerdatenbank.
DROP TABLE IF EXISTS `all_rechner`; CREATE TABLE `all_rechner` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `rechnername` VARCHAR(20) NOT NULL DEFAULT '', `domain` VARCHAR(80) NOT NULL DEFAULT '', `rechnertyp` VARCHAR(40) NOT NULL DEFAULT '', `CPU` VARCHAR(40) NOT NULL, `Arbeitsspeicher` VARCHAR(20) NOT NULL, `standort` VARCHAR(20) NOT NULL DEFAULT '', `rack` VARCHAR(10) NOT NULL DEFAULT '', `os` VARCHAR(20) NOT NULL DEFAULT '', `sp` INT(11) NOT NULL, `BIT` VARCHAR(8) NOT NULL, `objectid` VARCHAR(20) NOT NULL DEFAULT '', `identnr` VARCHAR(20) NOT NULL DEFAULT '', `verfahren` VARCHAR(20) NOT NULL DEFAULT '', `umgebung` VARCHAR(20) NOT NULL DEFAULT '', `funktion` VARCHAR(80) NOT NULL DEFAULT '', `abteilung` VARCHAR(20) NOT NULL DEFAULT '', `ansprechpartner` VARCHAR(40) NOT NULL DEFAULT '', `monitoring` TINYINT(1) NOT NULL DEFAULT '0', `backup` TINYINT(1) NOT NULL DEFAULT '0', `kommentar` VARCHAR(255) NOT NULL DEFAULT '', `letztes_update` DATETIME NOT NULL, `repo` VARCHAR(20) NOT NULL, `erstinstall` DATE NOT NULL, PRIMARY KEY (`id`), KEY `rechnername` (`rechnername`) ) ENGINE=MRG_MYISAM DEFAULT CHARSET=utf8 UNION=(`rechner`,`rechner_hpux`,`rechner_solaris`);
Wichtig ist hierbei, dass alle Tabellen genau die gleiche Struktur haben.