Bisher habe ich meine Adressen in einer Excel-Tabelle verwaltet. Diese enthält redundante Daten und widerpricht somit den Regeln guten Datenbank-Designs.
Jetzt habe ich mir dafür eine Datenbank entworfen (Access 2000), die aus 5 Tabellen besteht. Diese sind in der 3. Normalform und über Fremdschlüssel miteinander verknüpft. Meine Frage ist jetzt, wie ich die Daten aus Excel ohne viel Aufwand in die Access-Tabellen bekomme, denn ich will die Fremdschlüssel-Werte in jeder Tabelle natürlich nicht für jeden Datensatz von Hand setzen und normalisieren.
Jetzt habe ich mir dafür eine Datenbank
entworfen (Access 2000), die aus 5
Tabellen besteht. Diese sind in der 3.
Normalform und über Fremdschlüssel
miteinander verknüpft.
Vorschlag:
Füge für jede Tabelle eine
Schlüsselspalte ein, sortiere nach den
Schlüsseln und trage die Index-Nummer ein.
Das geht auch Automatisch:
Wenn Schlüssel-Feld vorhergehnder Datensatz gleich Schlüssel-Feld Aktueller Datensatz dann Wert nicht erhöhen, sonst erhöhen.
Füge für jede Tabelle eine
Schlüsselspalte ein, sortiere nach den
Schlüsseln und trage die Index-Nummer
ein.
Das geht auch Automatisch:
Wenn Schlüssel-Feld vorhergehnder
Datensatz gleich Schlüssel-Feld Aktueller
Datensatz dann Wert nicht erhöhen, sonst
erhöhen.
Danke für Deine Hilfe. Aber irgendwie wäre es so trotzdem noch viel Arbeit, wenn man bedenkt, daß ich aus einer Tabelle 5 machen muß. Ich müßte ja alle Fremdschlüssel (*ID) der einzelnen Tabellen von Hand vergeben, um die Tabellen zu verknüpfen. Aber wahrscheinlich geht es wirklich nicht anders.
Ich habe mal schnell die Beziehungsstruktur der Tabellen ins Netz gestellt, damit Du Dir vorstellen kannst, was ich meine:
Binde doch einfach Deine Excel-Tabelle ein - dann kannst Du darüber Tabellenerstellungsabfragen definieren (mit SELECT DISTINCT - also „keine Duplikate“), die deine Fremdschlüssel erstellen.
Oder überlass’ die Optimierung dem Tabellenanalyse-Assistenten (unter „Extras/Analyse/Tabellen“).
Reinhard
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Binde doch einfach Deine Excel-Tabelle
ein - dann kannst Du darüber
Tabellenerstellungsabfragen definieren
(mit SELECT DISTINCT - also „keine
Duplikate“), die deine Fremdschlüssel
erstellen.
Danke für Deine Hilfe. So werde ich es machen.
Oder überlass’ die Optimierung dem
Tabellenanalyse-Assistenten (unter
„Extras/Analyse/Tabellen“).
Den Tabellenanalyse-Assistenten habe ich ausprobiert. Er produziert aber nur Müll, wenn er die Tabelle normalisieren will. Und wenn ich „Selbst entscheiden“ einstelle, läßt er mich nicht so normalisieren, wie ich gerne möchte. Typisch Mikroschrott eben.