PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : datenbankdesign



bigair
29-09-2005, 21:33
kennt sich wer von euch mit datenbankdesign aus...hätt nur a paar kleine fragen...
geht um a paar projekte...nedallzu komplex....mySQL...

lg
dominik

AB
29-09-2005, 21:36
Wie wärs wenn du die Fragen hier reinstellst? ;)

bigair
29-09-2005, 21:38
ok was leichtes zum begin...

geht um ein projekt das ich gerade realisieren will (muss)

es wird von mehreren tabellen zu mehreren tabellen gelinkt (immer andere tabelln)
a -> b
c -> d

zb...

diese links haben alle die gleichen attribute....<typ> zb....

...sind alles m zu n verbindungen
...jetzt is die frage...ob ich für a->b und c->d imma a eigene tab brauch...oda alles über eine tabelle mit den primary keys laufen lassen kann

lg
dominik

Leiti
29-09-2005, 21:47
wie wärs mit einer normalen beschreibung?

mitt verlinken meinst du wohl einen Join? Haben alle EInträge die selben Attribute?

bigair
29-09-2005, 21:50
wie wärs mit einer normalen beschreibung?

mitt verlinken meinst du wohl einen Join? Haben alle EInträge die selben Attribute?

magst ein relationmodell...oda a er?

bigair
29-09-2005, 21:54
....bsp:.

tab1: arzt...name...ort...strasse...blabla....id

und die setz ich in beziehung mit:
tab1 <arbeitet in> krankenhaus
tab1 <arbeitet in> praxis

tab2: krankhaus id
tab3: praxis id

weils ja m:n beziehungen sind...muss ich eine eigene tabelle machn....
muss ich für beide eine eigene tabelle machn
oda kann ich mich auf eine beschränken <arbeitet in> hat bei gleichen die gleichen attribute

punkti
29-09-2005, 21:59
das kommt drauf an! ist eine praxis immer im selben krankenhaus,kann der mehrere praxen haben!? kann der nur bei einem krankenhaus arbeiten??

ich würdemal sagen, du brauchst drei tabellen! eine arzt, eine kh, eine praxis!

bigair
29-09-2005, 22:00
das kommt drauf an! ist eine praxis immer im selben krankenhaus,kann der mehrere praxen haben!? kann der nur bei einem krankenhaus arbeiten??

ich würdemal sagen, du brauchst drei tabellen! eine arzt, eine kh, eine praxis!

krankenhaus und praxis is einzeln...eh kloar


das ich die drei tabellen brauch....weis ich eh....
nur ich brauch eine tabelle für die verbindungen...nur die frage is...ob ich eine brauch oda zwei =)

punkti
29-09-2005, 22:03
warumbrauchst du eine für verbindungen??
kann ein arzt mehrere praxen haben oder nicht???
sind die praxen an ein krankenhaus gebunden?? weil dann würd ichs anders machen!

arzt name adresse tellnummer .... praxenID

praxis name ausstattung.... khID

kh name adresse .....

fertig!

bigair
29-09-2005, 22:05
ein artz kann mehrer praxen haben
eine praxis kann nur einen arzt haben

-> 1:n beziehnung

ein arzt kann in mehreren kh´s sein
ein kh kann mehrere ärzte haben...

-> m:n
-> brauch eine extra tabelle

punkti
29-09-2005, 22:08
es ist schön, dass du das so früh schreibst!! :rolleyes:

na dann ahst halt:

arzt .........
praxis ..... arzt ID
KH .......

arztKH arztID KHID

bigair
29-09-2005, 22:10
es ist schön, dass du das so früh schreibst!! :rolleyes:

na dann ahst halt:

arzt .........
praxis ..... arzt ID
KH .......

arztKH arztID KHID

jo....ok...das war jetzt ein orsch bsp...aba es passt scho...nur was wenn jetzt noch krankenschwestern dazukommen...
brauch ich dann a tab krankenschwesterKH krankenschweseterID KHID
oda kann ich das irgentwie in die obere tab dazubastln?

punkti
29-09-2005, 22:13
das kommt jetzt drauf an! hat eine krankenschwester soviel andere atribute wie ein arzt?? in welche normalform willst/musst du das ganze bringen!? kann eine krankenschwester in mehreren krankenhäusern arbeiten!?

bigair
29-09-2005, 22:14
das kommt jetzt drauf an! hat eine krankenschwester soviel andere atribute wie ein arzt?? in welche normalform willst/musst du das ganze bringen!? kann eine krankenschwester in mehreren krankenhäusern arbeiten!?

jo krankenschwester hat das gleiche wie der arzt....aba eine eigene tabelle für die krankenschwestern....nur halt ich will die beziehnung in die gleiche schreiben wie die vom arzt^^

punkti
29-09-2005, 22:19
dann machst eine "user" tabelle mit einem feld für... phu nennen wir es mal ausbildung! eine 1 ist arzt, eine 2 krankenschwester usw.

hat den vorteil,wenn du jetzt noch die putzfrauen eingeben willst vergibst einfach eine neue nummer! du kannst dann noch eine tabelle mit einer "erklärung machen! soll heißen wo dann drinsteht 1 ist arzt!

bigair
29-09-2005, 22:20
dann machst eine "user" tabelle mit einem feld für... phu nennen wir es mal ausbildung! eine 1 ist arzt, eine 2 krankenschwester usw.

hat den vorteil,wenn du jetzt noch die putzfrauen eingeben willst vergibst einfach eine neue nummer! du kannst dann noch eine tabelle mit einer "erklärung machen! soll heißen wo dann drinsteht 1 ist arzt!

passt....dann wirds auch atomar genug.....dankeschön... ;)

punkti
29-09-2005, 22:22
ob das jetzt aber dritte normalform ist weiß ich nicht! denke aber schon! 4. oder 5.ist sicher nicht! :D

bigair
29-09-2005, 22:23
ob das jetzt aber dritte normalform ist weiß ich nicht! denke aber schon! 4. oder 5.ist sicher nicht! :D

pfu...mir reichen eh 1-3....der rest is eh nur feintuning....=)

nore
30-09-2005, 15:58
ein artz kann mehrer praxen haben
eine praxis kann nur einen arzt haben

-> 1:n beziehnung

es können mehrere ärzte in einer praxis arbeiten
jeder dieser ärzte kann in mehreren praxen arbeiten

also n:m


du kannst es in einer tabelle machen wenn du unterscheidest ob die zuordnung für krankenhaus oder praxis. wenn es aber in 2 versch. tabellen verlinkt wird (die miteinander direkt nichts zu tun haben), würde ich für die übersicht aber 2 bevorzugen

Eric
30-09-2005, 16:23
Hi,

ich würde auch zwei Tabellen nehmen. Ich weiß zwar nicht wie groß Deine Datenbankanwendung werden soll, aber normalerweise nimmt man für jede m:n Beziehung eine eigene (Intersection-) Tabelle. Von der Benennung der Tabelle würde ich folgendes Schema nehmen:
Beispiel: Arzt >--< Praxis (also m:n Arzt mit Praxis)

Tab für Arzt: ARZT
Tab für Praxis: PRAXIS
Tab für Intersection: ARZT_PRAXIS

Wenn man die Intersection in der obigen Form benennt hat den Vorteil, dass man anhand des Namens erkennt, dass es sich um eine Intersection handelt. Darüber hinaus ist an der Zusammensetzung des Namens zu erkennen welche Entitäten miteinander in der m:n Beziehung stehen.

So long
Elric