PDA

Vollständige Version anzeigen : Hilfe zur Abfrage (wie soll man soetwas nur realisieren....)


Alexandra, die zweite
20.09.2001, 06:12
Hallo ihr narren und narrenäsen

Ich bastle gerade eine Access2000 Datenbank um bzw. hab die Aufgabe eine bestehende neu zu gestalten.

Nun war es in der bestehenden Datenbank im Prinzip eine Tabelle, in der die Felder z.B.

- Gehäuse
- Karte1
- Karte2
- Karte3
- Karte4
- ...

waren. Ich habe es jetzt so gemacht, dass es 2 Tabellen sind; 1. Gehäuse, 2. Karten und diese über ein ID Feld verknüpft (in der ersten Tabelle als Primär Key (Autowert), in der 2. als Zahl ohne PrimärKey

Jetzt gab es in der alten Datenbank eine Abfrage, in der man z.B. Karte1 = 0815, Karte2 = 4711, Karte3 = * usw eingeben konnte. Als Ergebnis gab es dann halt die Datensätze, bei denen die Karten übereinstimmten und außerdem wurde noch die Gehäuse-Nummer des entsprechenden Datensatzes angegeben.

In letzterem sehe ich kein Problem, aber wie kann ich die Abfrage mit den Karten gestalten? Bis jetzt war es so, dass es ein Formular gab (mit den Feldern Karte1, Karte2 usw), aber das kann ich jetzt so ja nicht mehr machen.

Und ich sehe gerade, in das Formular (mit den Feldern Karte1, Karte2, usw) konnte man auch noch Geräte eingeben (die "natürlich" vorher auch mit in der einen Tabelle gestanden haben, und jetzt eine extra Tabelle sind). Heißt also im Klartext, ich habe 3 Tabellen (Gehäuse, Geräte, Karten) und möchte jetzt möglichst ein Formular in das ich Geräte und Karten eingeben kann (mehrere) und nach einem Klick auf einen Button soll mir ein weiteres Formular angezeigt werden, das auf einem Abrageergebnis der eingebenen Geräte und Karten basiert.

Sodele, wenn mir jetzt noch jemand sagen kann, wie ich das am Besten anstelle hat was gut bei mir :-),
Alex

Phillip-Berlin
20.09.2001, 18:01
am besten du schaust dir als erstes mal die beziehungs db an
www.serve-u.de/access (http://www.serve-u.de/access)

HTH

siboern
20.09.2001, 19:42
Hallo Alex,
trotz Deines sehr ausführlichen Beitrags ist es für mich sehr schwer, besser gesagt nicht möglich, zu helfen. Am besten wäre, wenn Du mir mal eine Beispeildb schicken würdest, ich bin sicher, daß wir dann sehr schnell zu einem Ergebnis kommen.
Gruß Siegfried

------------------

Alexandra, die zweite
21.09.2001, 07:08
Hallöle

da suchte ich grad meinen Beitrag, weil ich mal versuchen wollte ihn nach oben zu schieben, und dann habt ihr schon drauf geantwortet, danke (nächstes Mal sagt ihr dann aber bescheid, ja? :-)

Das mit den Beziehungen ist mir schon klar, mir ging es darum, wie ich diese Abfrage anders gestalten kann. Momentan ist es ja so, dass man eine Abfrage hat (eigentlich ein Formular, dass auf einer Abfrage basiert, aber das ist nebensächlich).

Also vorher hatte ich eine Tabelle, mit den Feldern Gehäuse-Nr, Karte1, Karte2, Karte3, ... Karte10

In der Abfrage konnte ich dann ja sagen, "zeige mir alle Datensätze aus der Tabelle, bei denen Karte1=0815, Karte2=4711, Karte3=* ... Karte10=*

Es wurden mir also alle Datensätze angezeigt, bei denen Karte1 und Karte2 0815 bzw. 4711 sind; was bei den anderen steht ist egal.

Jetzt habe ich 2 Tabellen.
1. Gehäuse (mit dem Feld Gehäuse-Nr, und einem ID Feld, als Autowert)
2. Karten (mit dem Feld Karte und einem ID Feld als Zahl)

Die beiden Tabellen stehen in einer 1:n Beziehung. Soweit, so gut

nuuuur, wie kann ich jetzt die Abfrage gestalten, bei der ich vorher sagen konnte Karte1=0815, Karte2=4711, Karte3=* ... Karte10=* ??

Das kann ich doch jetzt nicht mehr, oder?

Hoffe es ist jetzt ein wenig klarer geworden, sorry,
Alex

choo choo romero
24.09.2001, 07:40
Also Alex,

Ich würde sagen du öffnest eine neue Abfrage

Klickst auf Tabellen anzeigen, lässt beide Tabellen anzeigen, dann machst du Beziehungen mit deinem ID Feld in der Abfrage. Dann fügst du einfach alle Felder von beiden Tabellen ein die du brauchst, und gibts bei dem Feld wo es ein Kriterium gibt ein: Forms!deinformularname!deinfeldname

und wenn du dann programmierst

schreibst du einfach

docmd.openquery "deinabfragenamen"

und schon hast du deine Abfrage.

Wenn du das ganze in deinem Formular stehen haben willst mußt du noch ne Kleinigkeit machen, melde dich einfach

c u

choo choo

PS: Ich hoffe ich hab dich richtig verstanden

Alexandra, die zweite
24.09.2001, 08:40
hallo Romeo (ob ich mich jetzt Julia nennen sollte :-)

soweit logisch. Nur habe ich jetzt ja nur noch ein Feld "Karte", vorher war es ja so, dass ich 10 Kartenfelder hatte (Karte1, Karte2..) und da halt eine Abfrage machen konnte á la

Karte1 = 0815
Karte2 = 4711
Karte3 = *
Karte4 = *
...

Jetzt kann ich ja nur noch sagen

Karte = 0815 oder 4711

oder irgendwie soetwas, aber ich kann ja nicht mehr festlegen, dass er mir nur die Datensätze anzeigen soll, bei denen Karte1 eben 0815, Karte2 4711 usw ist

Ich hab jetzt die Tabelle einfach wieder so geändert, dass ich 10 Kartenfelder habe, nützt ja nichts :-)

Grüße,
Julia äh Alex ;-)

choo choo romero
24.09.2001, 09:01
hey julia,

ich würde zwar gern dein romeo sein aber es heisst romero, (r!) also
zu deinem Problem, also wenn du deine abfrage öffnest, dann kannst du ja mehrere tabellen anzeigen lassen, dann mußt du die beiden in der Abfrage mit einander verbinden, bzw. wenn du schon eine Beziehung zwischen den Tabellen hast, dann müsste die eigentlich angezeigt werden, also versuchs mal, danach kannst du alle felder darstellen, und auch abfragen natürlich,

in dem du in deinem Formular, einfache auswahlfelder hast, dort wählst du aus, und gibst es als kriterium an, eben wie ich geschrieben habe, forms!deineformularname!deinfeldname, dann funzt dass auch.

Also schreib einfach womit du bei meiner erklärung probleme hast, wenn du nämlich so eine abfrage nicht hinbekommst, dann wirst du in deiner db noch ordentliche probleme bekommen. Also nichts für ungut,
ich will ja nur helfen, c u
julia

mfg

choo choo