Virtlab:Rezervační server/Popis databáze
Z VirtlabWiki
Virtlab:Rezervační server používá k ukládání dat databázový server MySQL. Rezervační server vyžaduje podporu transakcí, proto se používají tabulky typu InnoDB. Zde jsou tabulky obsahující informace o rezervacích.
Obsah |
[editovat]
Tabulky rezervací
[editovat]
RESERVATIONS
Klíčem záznamů jsou unikátní id rezervace resid (jedinečné pro celý distribuovaný Virtlab). Dále záznam obsahuje startovací a konečný čas rezervace from_time a to_time. Přes id rezervace je napojena tabulka RESERVED_DEVICES.
| Název sloupce | Typ | Null | Klíč | Implicitní hodnota | Další | Poznámky |
|---|---|---|---|---|---|---|
| resid | varchar(23) | ne | primární | NULL | Formát: číslo@lokalita | |
| from_time | datetime | ne | 0000-00-00 00:00:00 | Sekundy vždy 0 | ||
| to_time | datetime | ne | 0000-00-00 00:00:00 | Sekundy vždy 0 |
[editovat]
Skript pro vytvoření
CREATE TABLE `reservations` (
`resid` VARCHAR(23) NOT NULL DEFAULT '' COMMENT 'identifikator rezervace ve tvaru cislo@lokalita',
`from_time` DATETIME NOT NULL DEFAULT 0 COMMENT 'cas pocatku rezervace',
`to_time` DATETIME NOT NULL DEFAULT 0 COMMENT 'cas konce rezervace',
PRIMARY KEY(`resid`)
)
ENGINE = InnoDB;
[editovat]
RESERVED_DEVICES
Každý záznam obsahuje cizí klíč id rezervace resid (viz RESERVATIONS) a unikátní id síťového zařízení device. Celý řádek je klíčem.
| Název sloupce | Typ | Null | Klíč | Implicitní hodnota | Další | Poznámky |
|---|---|---|---|---|---|---|
| device | varchar(20) | ne | Null | Formát: název@lokalita | ||
| resid | varchar(23) | ne | primární | NULL | Formát: číslo@lokalita |
[editovat]
Skript pro vytvoření
CREATE TABLE `reserved_devices` (
`device` VARCHAR(20) NOT NULL DEFAULT '' COMMENT 'identifikator zarizeni ve tvaru nazev@lokalita',
`resid` VARCHAR(23) NOT NULL DEFAULT '' COMMENT 'identifikator rezervace ve tvaru cislo@lokalita',
PRIMARY KEY(`device`, `resid`)
)
ENGINE = InnoDB;
