Avatar billede hans01 Forsker
06. august 2016 - 10:28 Der er 4 kommentarer og
1 løsning

lave relation imellem to tabeller

Jeg sidder og bikser at lave en relation i mysql imellem to tabeller, og er ikke helt sikker på hvad der er det smarteste.

jeg har en tabel som lister "fysiske servere" denne tabel består af en serverID en server navn og en Timestamp, den anden tabel lister "virtuelle servere" denne tabel består ligeledes af en serverID en server Navn og en timestamp.

Ideen er at jeg skal kunne oprette og redigere begge server typerne.

Nu er det at for hver fysisk server har den en række virtuelle server, så jeg kan printe(vise) hvilke virtuelle servere der ligger på hver fysiske server..

jeg ved ikke om der er forståeligt?

er der nogen med en ide, til hvad der er smartest?
Avatar billede olsensweb.dk Ekspert
06. august 2016 - 11:39 #1
er det ikke bare en simpel 1 til mange relation mellem de fysiske servere og de virtuelle ??


CREATE TABLE `tbl_fysiske_servere` (
  `id` int(11) NOT NULL,
  `name` varchar(255) COLLATE utf8_danish_ci NOT NULL,
  `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci;


CREATE TABLE `tbl_virtuelle_servere` (
  `id` int(11) NOT NULL,
  `name` varchar(255) COLLATE utf8_danish_ci NOT NULL,
  `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `fysiske_server_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci;

ALTER TABLE `tbl_fysiske_servere`  ADD PRIMARY KEY (`id`);
ALTER TABLE `tbl_virtuelle_servere` ADD PRIMARY KEY (`id`);
ALTER TABLE `tbl_fysiske_servere`  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
ALTER TABLE `tbl_virtuelle_servere` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
Avatar billede arne_v Ekspert
06. august 2016 - 15:22 #2
Evt. med mere eksplicit kobling via REFERENCES:

https://dev.mysql.com/doc/refman/5.7/en/example-foreign-keys.html
Avatar billede arne_v Ekspert
06. august 2016 - 15:24 #3
Avatar billede hans01 Forsker
07. august 2016 - 08:57 #4
Tak for hjælpen begge to, jeg benyttede mig af Ronols forslag,

mange tak og hav en god søndag
Avatar billede arne_v Ekspert
07. august 2016 - 15:50 #5
Strengt taget er det ikke to forskellige forslag.

Det er:
* 1:M relation
* 1:M relation med lidt ekstra support fra databasen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester