hilpers


  hilpers > comp.* > comp.datenbanken.ms-access

 #1  
12.08.2004, 12:47
Alexander Kluge
Hallo!

könnte mir jemand helfen: eine
tbl_A hat Nachname, vorname, Datum, ID. Die drei ersten Felder bilden
zusammen den Primärschlüssel, sind also gemeinsam eindeutig. ID ist
meistens leer, wenn vorhanden, dann eindeutig für Name&Vorname, aber für
versch. Daten mehrfach vorh.

tbl_B hat Name ("Name^Vorname"), ID. ID und Name sind jeweils eindeutig
tbl_C hat Datum, ID ID ist nicht eindeutig

B und C sind 1:n über ID verknüpft, Kein Feld aus A kann mit referent.
Integr. mit B verknüpft werden.


Wie kann ich jetzt

Zunächst für A die zuverlässige B.ID gewinnen, indem A.Vorname und
A.Nachname in B.Name enthalten sind, also etwas wie

(A.Nachname steckt in B.Name UND A.vorname steckt in B.Name) ODER A.ID =
B.ID

ähnlich
WHERE tbl_A.Nachname LIKE "*ausdruck*"
nur, daß LIKE einen String erwartet und ich da keinen Feldnamen
hinschreiben kann.


dann anhand der jetzt erkannten ID eine 1:1-Beziehung zwischen A und C
herzustellen, sollte einfach sein. Ziel ist, aus C auf die weiteren
Felder in A zugreifen zu können, meinetwagen in einem Unterformular.


Wie ist es jetzt richtig?

Gruß
AK
 #2  
13.08.2004, 08:33
Gerald Aichholzer
Alexander Kluge wrote:

[..]
> hinschreiben kann.
>> dann anhand der jetzt erkannten ID eine 1:1-Beziehung zwischen A und C

> herzustellen, sollte einfach sein. Ziel ist, aus C auf die weiteren
> Felder in A zugreifen zu können, meinetwagen in einem Unterformular.
>> Wie ist es jetzt richtig?

>


Hallo Alexander,

vielleicht solltest du dir über dein Tabellendesign Gedanken machen,
z.B. ein zusätzliches Feld (Zähler?) hinzufügen, über das die Tabel-
len A und B leicht verknüpft werden können.

Sonst spricht nichts gegen ein Konstrukt a la

WHERE (B.Name LIKE "*" & A.Vorname & "*" AND
B.Name LIKE "*" & A.Nachname & "*") OR ....

Das ist jedoch weder performant, noch leicht verständlich und wart-
bar.

lg,
Gerald
 #3  
13.08.2004, 14:46
Alexander Kluge
Gerald Aichholzer wrote:


> vielleicht solltest du dir über dein Tabellendesign Gedanken machen,


Wieso sagen das immer alle :)

> z.B. ein zusätzliches Feld (Zähler?) hinzufügen, über das die Tabel-
> len A und B leicht verknüpft werden können.


Die Tabelle A stammt aus einer kommerziellen Anwendung, ich wollte nur
die Daten herausziehen.

> Sonst spricht nichts gegen ein Konstrukt a la
>
> WHERE (B.Name LIKE "*" & A.Vorname & "*" AND
> B.Name LIKE "*" & A.Nachname & "*") OR ....


Danke, das ist es.

Gruß
Alexander
Ähnliche Themen
Wo steckt der Zirkelbezug in der UDF

Hallo, die UDF soll die Summe einer Spalte ermitteln (stark vereinfachter Testbaustein). Bei Start der UDF soll eine Zelle in der Datenreihe angeklickt werden (aus anderen...

Was steckt in Katzenklofiltern?

Okay, das sie draußen Regenwasser vom Katzenklodeckt leckt kann ich ja noch versthen. Aber was zum Geier kann in den Filtern von Katzenklodeckeln stecken? Schnurri hat seit...

Was steckt in den beiden?

Von meinen 3 aus Spanien stammenden Katzen (1x Hauskatze) habe ich ein Geschwisterpaar, dass sowohl von der Größe als auch vom Aussehen ziehmlich unterschiedlich ist, beide...

wo steckt der fehler?

Hallo, Seit ich gestern cupsd mittels rc-update bei jedem start ausführen lasse bekomme ich etwa 100 Meldungen von fehlgeschlagenen "modprobes": modprobe: can't locate...


Alle Zeitangaben in WEZ. Es ist jetzt 03:34 Uhr. | Privacy Policy