🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych
Article #195670

Re: Podwójna relacja - jak?

#195670
From: geos
Date: Wed, 08 May 2019 13:11
23 lines
2052 bytes
On 08.05.2019 12:41, Roman Tyczka wrote:
> 
> Wyobraźmy sobie, że mam zaprojektować strukturę bazy w której będzie tabela
> przyborów biurowych (PRZYBORY), tabela pracowników (PRACOWNICY) oraz
> działów, w których pracują pracownicy (DZIALY).
> Przybory mogą należeć do pracownika konkretnego lub do całego działu.
> Jak to najzgrabniej zaprojektować? Mam dwa pomysły:

zrobiłbym tabelę "pracowników" i "działów", i do tego odpowiedni widok 
"właścicieli" jako union all powyższych (w wymaganym zakresie kolumn). z 
widoku połączenie do tabeli przejściowej "narzędzia_właściciele".

minusem, ale stosunkowo niewielkim, jest to, że klucze w obu tabelach 
(działy, pracownicy) musiałyby być generowane np. z jednej sekwencji 
(lub w inny sposób trzeba byłoby dbać o ich unikalność w ramach widoku). 
teoretycznie nie ma przeszkód, aby wartość klucza jakiegoś działu = 1 i 
1 byłaby wartością klucza dla jakiegoś pracownika, ale widok komplikuje 
tę teoretyczną możliwość. z drugiej strony generowanie jakichkolwiek 
kluczy z jednej sekwencji nie jest rzadkim rozwiązaniem. jest może po 
prostu trochę mało "oczywiste".

pozdrawiam
geos
Technical Details
Message-ID: <5cd2d597$0$528$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <uyjp7tf73q3d.dlg@tyczka.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Subject: Re: Podwójna relacja - jak?
Newsgroups: pl.comp.bazy-danych
References: <uyjp7tf73q3d.dlg@tyczka.com>
From: geos <geos@SPAMPRECZ.autograf.pl>
Date: Wed, 8 May 2019 15:11:51 +0200
MIME-Version: 1.0
In-Reply-To: <uyjp7tf73q3d.dlg@tyczka.com>
Lines: 23
Message-ID: <5cd2d597$0$528$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 178.235.204.97
X-Trace: 1557321111 unt-rea-a-02.news.neostrada.pl 528 178.235.204.97:54616
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit