Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Importierte Tabelle mit vielen m:n Beziehungen aufteilen
zurück: Ich suche die Defintion der Funktion StrVgl weiter: Doppelte Einträge in Abfragen löschen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
joerg70
Gast


Verfasst am:
09. Aug 2005, 12:30
Rufname:

Importierte Tabelle mit vielen m:n Beziehungen aufteilen - Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

Hallo Leute,
ich habe eine importierte Tabelle, die in 10 Spalten tausende von Daten enthält, die jeweils zu den anderen Daten m:n Beziehungen haben.

Nun möchte ich gerne die Tabelle aufteilen und Primärschlüssel vergeben, aber wie mache ich das? Inzwischen weiss ich, dass man eine m:n Beziehung in zwei 1:n Beziehungen mit einer Zwischentabelle aufteilt, aber wie mache ich das bei 10 oder mehr m:n Beziehungen. Jede Spalte hat ja mit jeder anderen ein m:n beziehung, wo fange ich denn da an???

Das ganze "Umwandeln" soll auch noch automatisch, z.B. per Makro geschehen.

Weiss da jemand Rat?

Danke, Gruß Jörg.
Loomex
VBA-Programmierer


Verfasst am:
09. Aug 2005, 12:49
Rufname:


AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen - AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

Hallo joerg
Vielleicht gibst mal die Struktur bez die 10 Felder an und eventuell noch was es für Datentypen sind Numerisch,Datum, Text.

Dann sehen wir klarer

greets

Loomex
Gast



Verfasst am:
09. Aug 2005, 13:07
Rufname:

AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen - AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

Das ging ja fix. Ich versuch´s mal....

Ich habe die Felder Projekt (Zahl; 1,2,3,4...), Maschinennr (Zahl; 1,2,3,4...), Bauart (Text; BA01, BA02...), Kunde (Text, HLD01, TRG07,...), Kundenbezeichnung (Text, Muster AG...), Rangnr. (Zahl; 1,2,3,4....) und Typ (Text; TR34-8x...).

Grundlegende Beziehung ist: Jede Maschinennr. kommt in jedem Projekt nur einmal vor.
Eine Kundenbezeichnung (z.B. Muster AG) findet sich in dem Feld Kunde wieder (z.B. MUS01, MUS02 etc)

Ansonsten kann z.B. in einem Projekt ein Kunde mehrere gleiche Typen gleicher Bauarten bestellen, die Rangnr würde dann hochzählen.
Da gibt es nun zig m:n Beziehungen, wie gesagt...

Hilft das?

Gruß Jörg.
Willi Wipp
Moderator


Verfasst am:
09. Aug 2005, 17:31
Rufname:
Wohnort: Raum Wiesbaden

Re: Importierte Tabelle mit vielen m:n Beziehungen aufteilen - Re: Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

Hi joerg70,

am besten legst Du als erstes in der importierten Tabelle einen Primaerschluessel (Autowert) an.
Dann musst Du Dir uber die Strucktur Deiner zukuenftigen DB klar werden.
Als naechstest erzeugst Du die "Katalog"-Tabellen durch gruppierte Tabellenerstellungs-abfragen
oder besser noch durch gruppierte Anfuege-Abfragen.
Wenn Du Anfuege-Abfragen verwendest, dann kannst Du bereits vorher die Tabellenstrucktur festlegen.
...
Fang mal an und frage ruhig nach, wenn die Fragen entwas konkreter sind Wink

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
joerg70
Office Kenner, VBA - Grundkenntnisse


Verfasst am:
12. Aug 2005, 06:43
Rufname:

AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen - AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

joerg70 am 10. Aug 2005 um 07:03 hat folgendes geschrieben:
Hallo Willi,
ich versuche ja schon seit einiger Zeit, diese Tabelle aufzuteilen. Dafür habe ich bisher Tabellenerstellungsabfragen genommen.

Ich bin dabei so vorgegangen:
Für alle Felder der Haupttabelle habe ich jeweils eine neue "Katalog"-Tabelle (?) erstellt, gruppiert und mit einem Primärschlüssel versehen. (Kann man Tabellenerstellungsabfragen eigentlich automatisch neu durchlaufen lassen, z.B. per Makro?)

Nun habe ich mir zunächst gedacht, dass ich für EINE m:n Beziehung (also zwischen zwei Feldern der Haupttabelle) eine dritte Tabelle brauche, aber was steht da drin? Eigentlich müßten doch die gesamten Werte der beiden Felder der Haupttabelle da drin sein, denn nur so wird doch jede m:n Beziehung realisiert, oder? Und die beiden Felder dieser dritten Tabelle setze ich dann in Beziehung zu den beiden Katalogtabellen.
Der nächste Schritt wäre dann, diese dritte Tabelle mit einem Primärschlüssel zu versehen und dann das nächste Feld der Haupttabelle wiederum mit einer neuen Zwischentabelle zu verbinden (das wäre dann die zweite m:n Beziehung). And so on... ist das richtig?

Eine andere Idee war, dass ich den Primärschlüssel der Hauptptabelle (Autowert) nehme, und diesen jeweils in Beziehung mit der Katalogtabelle setze. Das habe ich schon ausprobiert und es funktioniert, aber ich glaube, das erfüllt nicht den Zweck, oder? Damit habe ich im Hintergrund ja immer noch diese Riesentabelle laufen.

Also, die Struktur ist eigentlich klar, aber ....

Vielleicht hilft ja auch ein Beispiel!

Nehmen wir doch eine bestehende Tabelle mit den vier Feldern Name, Vorname, Strasse und Ort (mit 1 Mio Datensätzen). Hier besteht zwischen jedem der Felder zu den drei anderen eine m:n Beziehung. Wie würdest Du die nun aufteilen???

Danke für´s Grübeln Confused , Jörg

joerg70 am 11. Aug 2005 um 07:08 hat folgendes geschrieben:

Hallo Leute,
war wohl zuviel Text, daher hier nochmal nur das Beispiel...

Ich habe eine bestehende Tabelle (importiert) mit den vier Feldern Name, Vorname, Strasse und Ort (mit 1 Mio Datensätzen). Hier besteht zwischen jedem der Felder zu den drei anderen eine m:n Beziehung. Wie teilt man die zwecks Beschleunigung am besten auf (Tabellenerstellungsabfragen?, automatisch!) und vergibt Primärschlüssel?

Am Ende will ich ja ein Endlos-Formular haben, das, so wie die Tabelle, mit allen Daten gefüllt ist.

Danke für Eure Hilfe!

Gruß Jörg.

Gruß an alle,
ich geb ja nicht auf Very Happy

kann mir hier keiner einen Tip geben?

Gruß Jörg
Willi Wipp
Moderator


Verfasst am:
12. Aug 2005, 14:09
Rufname:
Wohnort: Raum Wiesbaden

Re: Importierte Tab mit m:n Beziehungen aufteilen (II) - Re: Importierte Tab mit m:n Beziehungen aufteilen (II)

Nach oben
       

Hi joerg70,

na dann versuche ich mal mein Glueck:
1.)
joerg70 hat folgendes geschrieben:
Kann man Tabellenerstellungsabfragen eigentlich automatisch neu durchlaufen lassen, z.B. per Makro?
Am besten machst Du das gleich mit VBA
Code:
    CurrentDB.Execute("DeineAbfrage")

2.) m:n Beziehung: Beide Haupt-Tabellen der m:n-Beziehung haben einen Primaerschluessel.
Die Werte dieser Primaerschluessel werden dann als Fremdschluessel in der 3. Tabelle gespeichert.
Es ist sinnvoll in dieser 3. Tabelle auch einen Primaerschluessel einzusetzen!
Allerdings sehe ich im Augenblick die n:m Beziehung in Deiner Tabelle noch nicht.
Ich denke Du hast nur 1:n Beziehungen der "Katalog"-Tabellen zur Haupttabelle.
Beispiel:
Haupttabelle (Ist-Zustand)
Projekt (Zahl)
Maschinennr (Zahl)
Bauart (Text)
Kunde (Text)
Kundenbezeichnung (Text)
Rangnr. (Zahl)
Typ (Text)

Haupttabelle (Soll-Zustand)
ID (Autowert) = Primaerschluessel
ProjektID (Zahl, Long) = Fremdschluessel
MaschienenID (Zahl, Long) = Fremdschluessel
KundenID (Zahl, Long) = Fremdschluessel
... (Weiter DS-bezogene Daten)

Projekt
ProjektID (Autowert) = Primaerschluessel
ProjektNr (Zahl)
Projektbezeichung (Text)
... (Weiter Projekt-bezogene Daten)

Maschiene
MaschienenID (Autowert) = Primaerschluessel
Maschinennr (Zahl)
Bauart (Text)
... (Weiter Maschienen-bezogene Daten)

Kunde
KundenID (Autowert) = Primaerschluessel
Kunde (Text)
Kundenbezeichnung (Text)
Rangnr. (Zahl)
Typ (Text)
... (Weiter Kunden-bezogene Daten)

Eventuell kann es sinnvoll sein z.B. die Bauart durch eine Katalogtabelle zu ersetzen.
Bauart
BauartID (Autowert) = Primaerschluessel
Bauart (Text)

1 Gross
2 Klein
3 Mittel
4 ...

Dann wuerde man in der Tabelle Maschiene nicht den Text sondern nur die ID speichern.

Oder die Strucktur koennte auch noch anders aussehen:
Projekt <-> ProjektKunde <-> Kunde
Projekt <-> ProjektMaschiene <-> Maschiene
Dafuer musst Du klaeren ob mehrer Kunden pro Projekt vorhanden sind.
Und ob mehrere Maschienen pro Projekt vorhanden sind.
und dann die zu den einzelnen Unter-Tabellen gehoerenden Daten identifizieren.

Ich hoffe das hilft Dir jetzt erstmal weiter Wink

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
joerg70
Office Kenner, VBA - Grundkenntnisse


Verfasst am:
12. Aug 2005, 19:23
Rufname:


AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen - AW: Importierte Tabelle mit vielen m:n Beziehungen aufteilen

Nach oben
       

Hallo Willi,
vielen Dank für Deine ausführliche Antwort!

Jetzt wird mir schon einiges klarer.

Gruß Jörg.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Budget aufteilen 2 Caitlin 570 07. Jun 2004, 20:39
Caitlin Budget aufteilen
Keine neuen Beiträge Access Tabellen & Abfragen: Primärschlüssel in Tabellen mit Beziehungen erneuern 1 mhw 1523 07. Jun 2004, 18:31
faßnacht(IT); Primärschlüssel in Tabellen mit Beziehungen erneuern
Keine neuen Beiträge Access Tabellen & Abfragen: tabelle exportieren 1 Gast 1501 01. Jun 2004, 12:25
Willi Wipp tabelle exportieren
Keine neuen Beiträge Access Tabellen & Abfragen: Duplikate einer Tabelle löschen?! 3 Esel 2108 28. Mai 2004, 08:53
lothi Duplikate einer Tabelle löschen?!
Keine neuen Beiträge Access Tabellen & Abfragen: Spaltennamen einer Tabelle ermitteln 1 Alexander Neron 899 27. Mai 2004, 13:47
lothi Spaltennamen einer Tabelle ermitteln
Keine neuen Beiträge Access Tabellen & Abfragen: kein Wert in der Tabelle, dann immer Null (0)?? 3 Michel_9 1005 26. Mai 2004, 14:28
Michel_9 kein Wert in der Tabelle, dann immer Null (0)??
Keine neuen Beiträge Access Tabellen & Abfragen: Konvertierung 97 nach 2000 - Beziehungen sind weg 1 katrin 07 395 21. Mai 2004, 21:50
mabe38 Konvertierung 97 nach 2000 - Beziehungen sind weg
Keine neuen Beiträge Access Tabellen & Abfragen: Operant aus Tabelle in Abfrage verwenden 3 AccessGeek 673 06. Mai 2004, 09:15
lothi Operant aus Tabelle in Abfrage verwenden
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle formatiert in txt-Datei exportieren 1 robby 1115 12. Apr 2004, 23:10
Helge Tabelle formatiert in txt-Datei exportieren
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle aus Abfrage erstellen 1 dasti 3317 09. Apr 2004, 12:14
Gast Tabelle aus Abfrage erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: Zeilenumbruch nach Einfügen Word Tabelle 2 topflop 1698 30. März 2004, 16:06
Gast Zeilenumbruch nach Einfügen Word Tabelle
Keine neuen Beiträge Access Tabellen & Abfragen: neue Tabellen erstellen aus vorhandener Tabelle 6 moni 2010 29. März 2004, 15:39
moni neue Tabellen erstellen aus vorhandener Tabelle
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel-Formeln