Guten Tag,
Tabelle sieht folgendermassen aus
kundennummer e-mail adresse alle e-mail adressen
1 meier@access.com meier@access.com; hugo@access.com
1 hugo@access.com
1 Kundennummer hat 2 verschiedene e-mail Adressen auf 2 Zeilen die ich beide in einem Tabellenfeld "alle e-mail adressen" will.
Wie muss ich da vorgehen, bzw wie sollte da die Abfrage aussehen.
Vielen Dank für die Hilfe.
Hallo,
das Feld alle e-mail Adressen ist überflüssig, diese erhälst du mittels Abfrage.
Oder aber du fügst ein weiteres Feld ein emailAdresse2 z.B.
Andreas
Danke Andreas, aber wie bringe ich die beide e-mail adressen auf eine Linie bzw ein Feld. Wie sollte die Abfrage in etwas lauten ?
Hallo,
WARUM willst Du alle Email-Adressen (eines Kunden?) in EINEM (Tabellen-)Feld haben?
Eine entspr. Abfrage gibt es nicht. Man muß per VBA (z. B: mittels Recordset) die einzelnen Adressen selber aneinanderhängen.
Hallo,
die Mailadressen in ein Feld zu schreiben wäre ein Verstoß gegen die Normalisierungsregeln!
Gehe davon aus, dass du eine Tabelle tblKunden besitzt mit Kundennummer als Primärschlüssel und weiteren infos zum Kunden (Namen, Adressen etc.)
Erstelle eine weitere Tabelle 'tblKontaktinfos' mit Kontaktinfo_ID (Autowert) als Primärschlüssel, Kundennummer_FK (Zahl, Long) als Fremdschlüssel zu tblKunden und Mailadresse (Text)
Stelle eine Beziehung zwischen tblKunden und tblKontaktinfos über Kundennummer her.
Somit hast du eine klassische 1:n Beziehung zwischen den beiden Tabellen und du kannst theoretisch 100e Mailadressen pro Kunde speichern ohne dass es in der Datenbank kracht.
Wenn du nun die Mailadressen eines bestimmten Kunden benötigst holst du die mit der SQL ...
SELECT Mailadresse FROM tblKontaktinfo WHERE Kundennummer = DeineKundennummer
Bzw. Wenn du per Kundennamen abrufen willst:
SELECT Mailadresse FROM tblKontaktinfo I INNER JOIN tblKunden K ON I.Kundennummer = K.Kundennummer WHERE Kundenname='DeinKundenname'
HTH