collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 66
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14066
  • stats Beiträge insgesamt: 67523
  • stats Themen insgesamt: 9099
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Datenbank Relation  (Gelesen 1281 mal)

Offline rmordico

  • Newbie
  • Beiträge: 9
Datenbank Relation
« am: April 27, 2018, 10:33:58 »
Guten Morgen,
Ich habe erst vor kurzem angefangen mich etwas mit Access zu beschäftigen und bin jetzt dabei meine DB zu erstellen. Tabellen und Daten wurden bereits vorbereitet und gepflegt. Jetzt geht es darum die einzelnen Tabellen sauber zu verknüpfen.

Wie man am Bild erkennt enthält der erste Teil eine détaillierte Länderdatenbank. Allerdings bin ich mir nicht sicher op die Verknüpfung so richtig ist.

Countries (Länder) ist die Haupttabelle. In jedem Land gibt es
a) Regionen (ISO - Regions)
b) Distrikte (ISO - Departements). Diese liegen aber gleichzeitig in dem Land und in der Region.
c) die Gemeinden (ISO - Municipalities) Diese liegen gleichzeitig in dem land, in der Region und zu guter letzt im Distrikt.

Wie genau wird das verknüpft  um später die Daten in einer Kundentabelle zu benutzen.

Ich bedanke mich im voraus.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7423
Re: Datenbank Relation
« Antwort #1 am: April 27, 2018, 10:49:27 »
Hallo,
mir sind die Zusammenhänge nicht klar. Ich tue mir auch schwer mit der Sprache.
Im Prinzip würde es reichen, jeweils die niederste Stufe als Fremdschlüssel zu verwenden.
Zitat
Wie genau wird das verknüpft  um später die Daten in einer Kundentabelle zu benutzen.
Es würde genügen, in der Kundentabelle nur den Fremdschlüssel zur Gemeinde zu speichern, weil sich alle anderen Daten aus den Beziehungen ergeben.

Die Kundentabelle ist aber noch nicht bei den Beziehungen, oder ?

Kannst Du mal versuchen eine eingedeutschte Version hier zu zeigen ?
Oder wenigstens mal die Tabellennamen auf Deutsch ?

Anmerkungen:
- In den Beziehungen stellt man grundsätzlich den Typ 1 (INNER JOIN) ein.
Das wird bei Bedarf nur in Abfragen geändert.
- In den Tabellen keine Nachschlagefelder verwenden.
Zitat
Tabellen und Daten wurden bereits vorbereitet und gepflegt.
Das war keine gute Idee. Hier ist das Datenmodell zu optimieren und dann musst Du möglicherweise die Daten wieder umstrkturieren.


« Letzte Änderung: April 27, 2018, 10:54:30 von MzKlMu »
Gruß
Klaus
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #2 am: April 27, 2018, 11:47:17 »
Hallo,
Hier kurz die Tabellentitel auf Deutsch.
Contients = Kontinente
Areas = Gebiete
ContUnions = Continental Unions = https://en.wikipedia.org/wiki/Continental_union
Countries = Länder
Regions = Regionen innerhalb eines Landes
Departements = (Administrative) Disktrikte innerhalb einer Region und innerhalb des Landes
Electoral Distrikt = Politische Wahldistrikte innerhalb einer Region und innerhalb des Landes
Municipalities = Gemeinden innerhalb einer Region und inerhalb eines administratvien Distrikt und innerhalb des Landes.


PS: Nein die Kundentabelle ist noch gar nicht fertig.

Zuerst müssen die Länderdaten (Geodatas) "alle informationen die es in einem Land eben gibt" gepflegt werden.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7423
Re: Datenbank Relation
« Antwort #3 am: April 27, 2018, 12:16:22 »
Hallo,
das ist ja vollständig hi­e­r­ar­chisch aufgebaut.
Es genügt daher ein einziger Fremdschlüssel zur Gemeinde.
Auch Deine jetzigen Beziehungen halte ich für falsch.

Beziehungen genau wie Du es oben beschrieben hast und keine einzelnen Fremdschlüsselfelder in den Tabellen.
Gruß
Klaus
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #4 am: April 27, 2018, 13:21:55 »
Das habe ich mir irgendwie gedacht,
kannst du mir bitte eklären wie ich das besser bewerkstelligen kann. Falls möglich mit einem Beispiel von meinen Tabellen.

Vielen Dank
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7423
Re: Datenbank Relation
« Antwort #5 am: April 27, 2018, 13:25:37 »
Hallo,
zu den Continental Unions. Kann ein Land in mehreren Continental Unions sein ?
Also z.B. in der EU und noch woanders ?
Ich bin da nicht so ganz wissend auf dem Gebiet.
Gruß
Klaus
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #6 am: April 27, 2018, 13:37:24 »
Nein, ein Land kann nur einmal drin sein.
zb .
Deutschland = EU kann aber nicht in der AU sein.
Luxemburg = EU kann aber nicht in der AU sein.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7423
Re: Datenbank Relation
« Antwort #7 am: April 27, 2018, 17:52:50 »
Hallo,
anbei mal ein Vorschlag.
Ich habe die Tabellen und Feldnamen eingedeutscht.
Die Tabellen enthalten auch nur die relevanten Felder.
Die Kundentabelle habe ich auch mal noch rudimentär angelegt.
Schaue es Dir mal an.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: rmordico

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #8 am: April 27, 2018, 21:17:15 »
Guten Abend,
erstmal vielen Dank. Ich merke dass meine Überlegungen nicht korrekt waren. Morgen versuche ich das mal aus. Zu den Länder kommt dann noch die Währungstabelle und die Sprachentabelle.

Die muss ich wohl dann an die Ländertabelle verbinden und an die Kunden (Adresstabelle)

Adresstabelle sollte so aussehen:
Ich betitele sie PARTNER

Partner bestehen aus neue Partner, neuer Lead, neuer Kunde und neuer Lieferant sowie eine Tabelle für Mitglieder. Alle 5 bekommen zusätzlich eine Tabelle Kontakte als Unteradresse/Ansprechpartner.

Jeder Partner kann entweder ein
Lead
Lead/Kunde
Kunde
Kein Lead/Kein Kunde - aber Lieferant sein
Mitglied im Firmenverein sein

Dazu kommen jeweils :
Kunden/Leadkategorien
Kontaktkategorien
Lieferantenkategorien
Mitgliederkategorien

« Letzte Änderung: April 27, 2018, 21:21:45 von rmordico »
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #9 am: April 28, 2018, 12:27:01 »
Guten Tag, habe die Relationen nun neu hergestellt und erweitert.

Parlamente (Legislatures) zu den Länder
Regierungen (Governments) zu den Länder

Sprachen (Languages) zu dem Land
Währungen (Currencies) zu dem Land

Kanns du mir sagen op ich das so richtig erstellt habe.

Vielen Dank
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Re: Datenbank Relation
« Antwort #10 am: April 28, 2018, 13:59:43 »
Ich kenne zwar nicht den Zweck der Datenhaltung - aber für interkontinentale Staaten scheint das Schema jedoch ungeeignet zu sein. :(
Grüße von der (⌒▽⌒)
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #11 am: April 28, 2018, 14:15:47 »
@Lachtaube, Das ist einfach ich möchte von Grund auf eine komplettierte Datenbank aufbauen.
Zuerst die GEODATEN. So detailliert wie möglich. Sämtliche Daten die in Beziehung zu einem Land stehen. Auf diese Basis möchte ich dann Etappenweise die Datenbank erweiteren.

Meine Überlegung:
Wir fangen bei einem Kontinent an.
Auf diesem Kontinent gibt es Gebiete.
In diesen Gebieten gibt es die Länder.
Einige Länder sind an eine Vereinigung gebunden. (zb: EU)
Die Länder sind in Regionen aufgeteilt
Die Regionen sind in Distrikte oder Kantons aufgeteilt. ( diese wiederrum sind noch in politische Wahlkreise eingeteilt. )
Die Kantons sind in Kommunen aufgeteilt
Die Kommunen sind in Städte oder Dörfer aufgeteilt
Die Städte sind in Strassen und Postleitzahlen aufgeteilt.

In jedem Land gibt es zusätzlich noch mehrere Sprachen und Währungen.

Aus all diesen Informationen soll dann später ein CRM / ERP entstehen. - - - Kontakt/Partner/Adressen, Terminplanung, Produkte/Leistungen, Vertrieb, Rechnung / Kasse und Vermögensverwaltung, Bankkonten, Buchführung, Projekte, Personal, Mitglieder, Dokumentverwaltung).

Da es für mich ein Projekt ist das ich in meiner Freizeit mache und auch dazulernen möchte, würde ich mich über jede Hilfe freuen. Vielleicht kann man das ja auch als ein freies Communityprojekt starten.
« Letzte Änderung: April 28, 2018, 17:39:08 von rmordico »
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Re: Datenbank Relation
« Antwort #12 am: April 28, 2018, 18:12:51 »
Nun, zum Üben für das Anlegen normalisierter Tabellen, mögen die Tabellen ja gut sein - damit hat es sich dann aber auch. Wer verfügt denn über solches Wissen und ist bereit, es in die Datenbank, womöglich auch noch mehrsprachig einzutragen? Zeitaufwand und Bezahlung dürften auch noch eine Rolle spielen - und ohne Wartung wird so eine Struktur schnell an Aktualität verlieren. Historien müßten also auch erfasst werden.

Und offen gesagt: Ein CRM oder ERP mit Access zu erstellen, halte ich schlichtweg für utopisch.
Grüße von der (⌒▽⌒)
 

Offline rmordico

  • Newbie
  • Beiträge: 9
Re: Datenbank Relation
« Antwort #13 am: Mai 08, 2018, 11:26:13 »
Warum zum üben ? :-\
Das mit dem eintragen und pflegen der Daten ist meine Aufgabe. Bei Fertigstellung könnten sogar andere davon profitieren.

Warum ist das utopisch ?

Ich benötige nur Hilfe am Anfang damit die Relationen zu den Tabellen auch richtig funktionieren. Mehr habe ich nicht gefragt.
« Letzte Änderung: Mai 08, 2018, 11:30:41 von rmordico »
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1336
Re: Datenbank Relation
« Antwort #14 am: Mai 08, 2018, 16:10:20 »
Access ist eine typische Desktop-Datenbank mit einem ca. 30 Jahre alten SQL-Dialekt, nicht ACID-fähig (Strom während des Datenschreibens weg - Datenbank pfutsch oder angeschlagen), stark begrenztem Mehrbenutzerbetrieb, keinen wirklichen Sicherheitseinstellungen, fehlender REST-Schnittstelle, usw. usf.. Es ist für mich kaum unvorstellbar, dass Dein Vorhaben bei irgend jemand Interesse weckt, zumal es schon viele gute Open Source Software in den genannten Bereichen gibt, die die vorher genannten Mankos nicht aufweisen.

Tipp: lerne Python, Ruby, Perl, eine Dot Net-Sprache o.ä, - da gibt es fertige, stets weiterentwickelte Software-Pakete, die Deine Idee realistischer erscheinen lassen.
Grüße von der (⌒▽⌒)