Re: Import aus Excel -Basketballsaisons aber wie?
Von: Klaus Oberdalhoff (kobd@gmx.de) [Profil]
Datum: 26.04.2008 12:05
Message-ID: <fuuuq3$ona$01$1@news.t-online.com>
Newsgroup: de.comp.datenbanken.ms-access
Datum: 26.04.2008 12:05
Message-ID: <fuuuq3$ona$01$1@news.t-online.com>
Newsgroup: de.comp.datenbanken.ms-access
Hi, da dir noch niemand geantwortet hat: so recht bin ich im Thema Basketball nicht drinnen, aber ich versuch's trotzdem: Z.B. sollte sich die Endplazierung pro Saison nicht aus den Punkten der Saison berechnen lassen ? Dann bräuchtest du doch eigentlich "nur" die Mannschaften und deren Punkte pro Saison zu speichern, der Rest ergibt sich ? Zuerst: Bei mir hat jede Tabelle grundsätzlich einen eigenen <nicht zusammengesetzten> PrimaryKey Schlüssel (zu 99,9 % Autowert) und die Beziehungen sind zusätzliche Fremdschlüssel ggf. mit Index (um sie eindeutig zu machen) ... Das ist dann schon "nicht mehr trivial" aber dadurch kann ich in einer Tabelle durch Abspeichern von Tabellen-Nr und IDWert verschiedene Indizes (z.B. bei Treeview sehr praktisch) quasi mischen. Ich persönlich importiere IMMER erst mal alle Excel-Tabellen (mit allen Feldern als Typ Text) eins zu eins in die Datenbank und erlaube Access einen eigenen Index beim Erstellen hinzuzufügen, das erscheint mir persönlich immer das einfachste, da dadurch gewährleistet ist, dass die Tabelleneinträge auch in der Reihenfolge in Access erscheinen, wie sie in Excel abgespeichert waren. SELECT Tabelle1.* FROM Tabelle1 LEFT JOIN Tabelle2 ON Tabelle1.Feld1 = Tabelle2.Feld1 WHERE (((Tabelle2.ID) Is Null)); Eine solche Abfrage z.B. liefert dir alle Werte aus Feld1 Tabelle1, die nicht mit Feld1 Tabelle 2 zusammenpassen... Auch wenn's die SQL-Freaks schaudern lässt: Man kann sich eine solche Abfrage leicht "zusammenklickern", einfach beide Tabellen auf eine Abfrage ziehen, das entsprechende Feld verknüpfen, dann auf die Verknüpfung doppelklicken und die Verknüpfung auf: "beinhaltet ALLE Datensätze aus Tabelle2 bei denen die Inhalte der verknüpften Felder beider Tabellen gleich sind" stellen, dadurch wird die Verknüpfung in einen Pfeil, dessen Spitze auf die Tabelle, von der NICHT ALLE Datensätze angezeigt werden sollen, geändert. Dann der Einfachheit halber das Sternchen der Tabelle von der ALLE Datensätze angezeigt werden sollen, runterziehen und in dem zweiten Feld der Abfrage als Bedingung "Ist Null" vom Feld "ID" (oder sowas) eingeben. Das zeigt dir alle Werte, die nicht "gematched" werden konnten. Danach ist Handarbeit gefragt. Nach dem Import schaue ich mir mittels Abfragen an, wie die Tabellen zusammenpassen, in deinem Falle ob die Namen auch alle gleich geschrieben sind, dabei kann man dann den Index, den Access beim Übernehmen der Stammtabellen (in deinem Falle Mannschaften) erzeugt hat, gleich als PrimaryKey verwenden und in die anderen Tabellen mit eintragen. -- mit freundlichen Grüßen aus Nürnberg Klaus Oberdalhoff KObd@gmx.de Ich unterstütze PASS Deutschland e.V. (http://www.sqlpass.de) als RGV (Franken) Nächstes Treffen in Nürnberg am 06.05.2008[ Auf dieses Posting antworten ]
