Erstellung einer Merge Tabelle

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.

 

Copyright © 2012 baecker.com. Alle Rechte vorbehalten.
Joomla! ist freie, unter der GNU/GPL-Lizenz veröffentlichte Software.