2.1k Aufrufe
Gefragt in Datenbanken von badni12 Einsteiger_in (33 Punkte)
Hallo

Ich habe zwei Tabellen, Tabelle "tblgesamt" und Tabelle "tbladressen"

In "tblgesamt" habe ich ungefähr 2000 DS ohne Adressen
Deshalb habe ich "tbladressen" erstellt; in dieser Tabelle werden die Lieferantennamen und jeweils die Adresse eingetragen (Ein Lieferant kommt in "tblgesamt" öfters vor

Nun meine Frage
Wie muss ich vorgehen, dass ich die Adressen auch in "tblgesamt" sehe?

Bin für jede Antwort dankbar

Lg

7 Antworten

0 Punkte
Beantwortet von
Hallo Adni,

gar nicht. Der Sinn von Datenbanken (wie z.b. Access) ist, nur die nöltigsten Daten in Tabellen zu speichern, und diese dann per Abfrage miteinander zu verknüpfen.

Du hast das schon richtig aufgebaut. Du solltest nun in beiden Tabellen eine Spalte mit dem Lieferantencode haben. In einer Abfrage kannst du die Spalten beider Tabellen miteinander verbinden und die Daten besser ansehen.

Sollte deine Frage dennoch darauf zielen die Adressen (unnötigerweise) in die andere Tabelle zu übernehmen, kannst du die Abfrage auch in eine Aktualisierungsabfrage umwandeln.

Mehr dazu später.

Gruß Mr. K.
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo,

Bring die Tabelle "tbladressen" mit Tabelle "tblgesamt" in eine 1:n Beziehung>Lieferantennamen, erstelle eine Abfrage aus Tabelle "tblgesamt" + Spalte "Adresse" aus "tbladressen".

Umgekehrt geht es leider nicht, zumal in Tabelle "tblgesamt" ein Lieferant mehrfach vorkommt.

Gruß

Paul1

[sub]Excel > Access > MS-Office 2003
MS Windows XP Professional SP3/32 Bit
MS Windows 7 Professional SP1/64 Bit
ECDL-Syllabus Version 4.0
FIBU/KORE/PV/KA/AB[/sub]
0 Punkte
Beantwortet von
Hallo nochmal:

Hier mal ein Beispiel für eine Standardabfrage:

Erstelle einen Abfrageentwurf
Wechsel zur SQL-Ansicht und gib dort folgenden Code ein:
SELECT tblGesamt.Lieferant, tblAdressen.Name, tblAdressen.Adresse, tblGesamt.Bestellnr, tblGesamt.Bestelldatum, tblGesamt.Wert
FROM tblGesamt LEFT JOIN tblAdressen ON tblGesamt.Lieferant = tblAdressen.Lieferant
ORDER BY tblGesamt.Bestelldatum;

Ersetze dabei ggf. die Feldnamen der Tabellen durch von dir benannte Felder.

Wenn du nun zur Entwurfsansicht wechselst, siehst du, wie die Abfrage aufgebaut werden sollte.
Mit einem Wechsel zur Datenblattansicht hast du alle Werte der Gesamttabelle + die Adressen der Adresstabelle in einer Übersicht.

Um die Adressen auch physisch in die andere Tabelle zu übernehmen, füge der Tabelle "tblGesamt" ein Feld "Adresse" hinzu und nutze den folgenden SQL-Code für die Abfrage:
UPDATE tblGesamt LEFT JOIN tblAdressen ON tblGesamt.Lieferant = tblAdressen.Lieferant SET tblGesamt.Adresse = [tblAdressen]![Adresse]
WHERE ((([tblGesamt]![Lieferant])=[tblAdressen]![Lieferant]));

Auch hier wieder hinterm Punkt bzw. hinterm Ausrufezeichen deine Feldnamen verwenden.

Auch hier kannst du in den Entwurfsmodus wechseln um dir den üblichen Aufbau solch einer Abfrage anzusehen.

Klicke nach Speichern der Abfrage doppelt darauf um sie auszuführen. (Ggf. musst du zuvor beim Öffnen der Datenbank die Update-Funktion aktivieren)

Ich hoffe wir konnten dir helfen.

Gruß Mr. K.
0 Punkte
Beantwortet von
Noch ein wichtiger Hinweis:

Mit eigenen Aktualisierungsabfragen kannst du dir schnell deine Daten zerstören. Schränke daher die Bedingungen welche Daten aktualisiert werden sollen über die Kriterien soweit wie möglich ein. Wenn du dir nicht hundertprozentig sicher bist, teste die Abfrage in einer Kopie deiner Datei, bevor du sie in echt umsetzt.

Gruß Mr. K.
0 Punkte
Beantwortet von badni12 Einsteiger_in (33 Punkte)
Hallo

Vielen Dank für die Tipps!
Leider kann ich das alles erst morgen probieren.
Werde mich dann melden

Nochmals danke
lg
0 Punkte
Beantwortet von badni12 Einsteiger_in (33 Punkte)
hallo

@ExcelKing

Antwort drei gibt das aus was ich gesucht habe, danke ;)

nun habe ich aber ein weiteres Problem..
Ich habe mit der Funktion "Web Browser Control" ein Feld erstellt, welches mir jetzt Google Maps mit den Adressen anzeigt.
Allerdings sieht man da auch immer das Bedienfeld, Eingabefeld etc..
Geht das, dass nur die Karte angezeigt wird?

Lg
badni
0 Punkte
Beantwortet von
Ich denke nicht, dass das geht. Das Web Browser Control gibt offensichtlich nur ein verkleinertes Gesamt-Bild der Website zurück. Du willst aber offensichtlich die interaktiven Controls der Website ausblenden.

Wenn überhaupt kannst du hier nur einen anderen Link verwenden oder die Einstellungen im Internetexplorer machen oder deinen Google Account anpassen. Evtl. bietet Google seine Karten auch zur Verlinkung in eigene Internetseiten an? Dann könntest du per HTML darauf zugreifen ohne die lästigen Steuerelemente zu sehen. Damit kenne ich mich aber nicht ausreichend aus. Vielleicht solltest du diese Frage nochmal in der Rubrik Internet stellen.

Grüße Mr. K
...