Tabellenaufteilung

15/01/2015 - 15:11 von eliasjebabli | Report spam
Hallo allerseits,

folgendes Anliegen:

Ich bin mir nicht ganz klar darüber wie ich meine gesamte Datenmenge optimal auf die verschiedenen Tabellen aufteilen soll.
(Access 2013)
Deshalb folgende Fragen:

1)
Warum teilt man überhaupt die Daten in verschiedene Tabellen auf?
Ich nehme an dabei geht es prinzipiell darum redundante Daten zu verhindern und so Speicherplatz zu sparen und zum anderen die Suche über ID`s zu beschleunigen und damit die Performance zu verbessern. Liege ich damit richtig?

2)
Wie ich verstanden habe geht es bei der Aufteilung der Daten lediglich ums Backend und darum dieses so Platzsparend und Performance steigernd wie möglich zu gestalten.
Kann ich das also so verstehen, dass bei der Arbeit mit den Daten spàter übers Frontend nur relevant ist, DASS DIE DATEN VORHANDEN SIND?
Oder wie ist, dass mit den Beziehungen?
Es tut mir leid für diese dümmliche Frage, aber ich verstehe nicht ganz wie das letztendlich ablàuft.

Wenn ich eine Tabelle A habe und diese über Fremdschlüssel von den Tabellen B, C und D Daten bezieht.

So wird bei der Dateneingabe doch von den Detailtabellen B,C und D doch die Tabelle A (Haupttabelle) gefüllt oder?

Wenn ich dann spàter Daten abrufe sagen wir die Datensàtze aus A die die Eigenschaften xy besitzen so können die über Fremdschlüssel bezogenen Daten aus B,C D in A doch mit geprüft werden für die Filterung, oder?

Sprich die Dateneingabe làuft der Abfrage entgegengesetzt?


Aber wie làuft es dann wenn meine Haupttabelle A wiederum über einen Fremdschlüssel als Datenquelle für eine Tabelle Z genutzt wird?

Enthàlt Z dann automatisch sàmtliche Daten aus A,B,C,D?










All diese Fragen sollen mir letztendlich dabei helfen folgendes Szenario optimal zu bearbeiten.

Ich habe eine tbl_Unternehmen, welche Unternehmensdaten wie Finanzkennzahlen, Adresse usw. enthàlt (diese Daten habe ich ausgelagert in andere Tabellen soweit kein Problem ist mir auch klar warum.)

Zudem habe ich eine tbl_Kontakte, welche sàmtliche Kontaktpersonen enthàlt (Name, tel, email etc.). Über den Fremdschlüssel ID_Untern in tbl_Kontakte habe ich die beiden Tabellen verknüpft, sodass jedem Kontakt eine Firma zugeordnet ist.

Desweiteren habe ich eine tbl_Projekte, die Tabelle soll neben (Name, Beschreibung etc.) festhalten, welche Unternehmen und welche Kontakte an diesem Projekt beteiligt sind.


Mein Problem ist nun, dass innerhalb der Projekte klar sein soll welcher Mitarbeiter sich um welche Kontaktperson kümmert.

Bin ich jetzt gezwungen für meine Projekte jeweils eine neue Tabelle zu erstellen welche die Kontakte zu diesem Projekt aus der ursprünglichen tbl_kontakte bezieht und zusàtzlich die Option hat einzutragen wer diesen Kontakt betreut?


Mit freundlichen Grüßen

Elias

P.S Entschuldigen ich weiß die Fragen sind etwas wirr aber ich steh grad echt auf dem Schlauch
 

Lesen sie die antworten

#1 Ulrich Möller
15/01/2015 - 15:54 | Warnen spam
Am 15.01.2015 um 15:11 schrieb :
Hallo allerseits,

folgendes Anliegen:

Ich bin mir nicht ganz klar darüber wie ich meine gesamte Datenmenge optimal auf die verschiedenen Tabellen aufteilen soll.
(Access 2013)
Deshalb folgende Fragen:

1)
Warum teilt man überhaupt die Daten in verschiedene Tabellen auf?
Ich nehme an dabei geht es prinzipiell darum redundante Daten zu verhindern und so Speicherplatz zu sparen und zum anderen die Suche über ID`s zu beschleunigen und damit die Performance zu verbessern. Liege ich damit richtig?

2)
Wie ich verstanden habe geht es bei der Aufteilung der Daten lediglich ums Backend und darum dieses so Platzsparend und Performance steigernd wie möglich zu gestalten.
Kann ich das also so verstehen, dass bei der Arbeit mit den Daten spàter übers Frontend nur relevant ist, DASS DIE DATEN VORHANDEN SIND?
Oder wie ist, dass mit den Beziehungen?
Es tut mir leid für diese dümmliche Frage, aber ich verstehe nicht ganz wie das letztendlich ablàuft.

Wenn ich eine Tabelle A habe und diese über Fremdschlüssel von den Tabellen B, C und D Daten bezieht.

So wird bei der Dateneingabe doch von den Detailtabellen B,C und D doch die Tabelle A (Haupttabelle) gefüllt oder?

Wenn ich dann spàter Daten abrufe sagen wir die Datensàtze aus A die die Eigenschaften xy besitzen so können die über Fremdschlüssel bezogenen Daten aus B,C D in A doch mit geprüft werden für die Filterung, oder?

Sprich die Dateneingabe làuft der Abfrage entgegengesetzt?


Aber wie làuft es dann wenn meine Haupttabelle A wiederum über einen Fremdschlüssel als Datenquelle für eine Tabelle Z genutzt wird?

Enthàlt Z dann automatisch sàmtliche Daten aus A,B,C,D?










All diese Fragen sollen mir letztendlich dabei helfen folgendes Szenario optimal zu bearbeiten.

Ich habe eine tbl_Unternehmen, welche Unternehmensdaten wie Finanzkennzahlen, Adresse usw. enthàlt (diese Daten habe ich ausgelagert in andere Tabellen soweit kein Problem ist mir auch klar warum.)

Zudem habe ich eine tbl_Kontakte, welche sàmtliche Kontaktpersonen enthàlt (Name, tel, email etc.). Über den Fremdschlüssel ID_Untern in tbl_Kontakte habe ich die beiden Tabellen verknüpft, sodass jedem Kontakt eine Firma zugeordnet ist.

Desweiteren habe ich eine tbl_Projekte, die Tabelle soll neben (Name, Beschreibung etc.) festhalten, welche Unternehmen und welche Kontakte an diesem Projekt beteiligt sind.


Mein Problem ist nun, dass innerhalb der Projekte klar sein soll welcher Mitarbeiter sich um welche Kontaktperson kümmert.

Bin ich jetzt gezwungen für meine Projekte jeweils eine neue Tabelle zu erstellen welche die Kontakte zu diesem Projekt aus der ursprünglichen tbl_kontakte bezieht und zusàtzlich die Option hat einzutragen wer diesen Kontakt betreut?


Mit freundlichen Grüßen

Elias

P.S Entschuldigen ich weiß die Fragen sind etwas wirr aber ich steh grad echt auf dem Schlauch





Hallo Elias,

deine Annahmen in 1) und 2) sind leider nicht ganz richtig. Als
Einsteiger würde ich mich erstmal in das Thema Datenbanken/Access
Datenbanken einlesen bzw. einarbeiten um ein gewissen Grundverstàndnis
dafür zu bekommen, was es denn damit auf sich hat. Andernfalls setzt
nach einer kurzen Phase schon der Frust ein, was ja nicht sein muß.

Am besten ein Buch oder Tutorial zur Hand nehmen und durcharbeiten -
parallel dazu immer deine Aufgabenstellung im Auge behalten.

Als Online Einstieg wàre vielleicht
http://www.access-entwicklerbuch.de...?page=buch (neben
anderen) hilfreich. Ist zwar für 2007, aber die Grundlagen gelten
natürlich auch für 2013. Deine Fragen werden dann in Kapitel 2
behandelt. Hier geht es um Datenbankdesign und Normalisierung von Daten.

Grüße

Ulrich

Ähnliche fragen