collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 71
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 1

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 13953
  • stats Beiträge insgesamt: 66364
  • stats Themen insgesamt: 8942
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Komfortabler Import  (Gelesen 4970 mal)

Offline OPS

  • Access-User
  • *
  • Beiträge: 76
Komfortabler Import
« am: Mai 12, 2010, 12:39:15 »
Hallo

Folgendes Problem:

tbl_CO
FK_X
FK_Y
FK_Z

Diese tabelle soll gefüllt werden. Zu deren Füllung habe ich eine Exceltabelle die ich importieren will.
Doch ach du schreck, in der Tabelle stehen natürlich nicht die Foreign Keys der Koordinaten, sondern die Koordinaten selbst.

Jetzt möchte ich die Tabelle aber unbedingt importieren. Es ist ein einmaliger Import, wenn die Daten erstmal drin sind, hat sich die Sache erledigt.
Gibt es eine einfache Möglichkeit, dass er direkt in Access nachsieht: "Ah da steht X=5, das ist FK_X=9"?

Ich könnte ja (theoretisch) auch in der Excel-tabelle hingehen und sagen:
Hier ist eine Liste mit X-Werten und ihren dazugehörigen Foreign Keys, ersetze doch bitte alle X-Werte mit den zugehörigen Foreign Keys.
Und danach importiere ich bequem die Exceltabelle.

Wie geht das aber? (Wenn es geht)

(in der echten Tabelle sind die Koordinaten natürlich keine Zahlen sondern Zeichenfolgen)
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23320
Re: Komfortabler Import
« Antwort #1 am: Mai 12, 2010, 13:05:33 »
Hallo,

erst eine Nachfrage:

wenn es sich um "Koordinaten" handelt (ob Zahl oder Text ist unerheblich), warum sind die in anderen Tabellen hinterlegt und sollen hier per FK referenziert werden?

Offline OPS

  • Access-User
  • *
  • Beiträge: 76
Re: Komfortabler Import
« Antwort #2 am: Mai 12, 2010, 13:10:33 »
Weil es eine begrenzte Anzahl von Eingabemöglichkeiten gibt die später nicht mehr erweitert werden sollen und dürfen.

Also z.B.
X=[Hoch, Niedrig, Mittel]
Y=[Weit, Nah, Gummibaum]

In einem Formular wählt man die einzelnen Koordinaten per Kombi-Feld aus.


Sag bloß dafür gibt es auch gute Alternativen...?
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23320
Re: Komfortabler Import
« Antwort #3 am: Mai 12, 2010, 13:21:29 »
Hallo,

na gut, unter "Koordinaten" versteh ich halt etwas anderes....


Zunächst sind die Stammdaten-Tabellen (diejenigen, in denen die X-/Y-/Z-"Kooardinaten" erfaßt werden,) zu füllen. Das kann ja mit einer Distinct  oder gruppierenden Abfrage in einer Anfügeabfrage passieren.

Sodann wird tbl_CO um 3 Felder erweitert, in die der Text der Koordinaten zu stehen kommt. Mittels Anfügeabfrage mit nur den Koordinaten-Texten aus der Excel-Liste werden die DAten importiert.

Letztendlich können die FK-Felder in tbl_CO über eine  Abfrage mit über die Text-Koordinaten-Felder verjointe Abfrage aktualisiert werden.

Offline OPS

  • Access-User
  • *
  • Beiträge: 76
Re: Komfortabler Import
« Antwort #4 am: Mai 17, 2010, 09:41:27 »
Guten Morgen

Ich habe es erst mal Koordinaten genannt weil die eindeutig die Position eines Objektes (in der realten Welt) beschreiben. Allerdings sind das keine Zahlen sondern Zeichenfolgen.

Ich habe es probiert und rumversucht aber es haut noch nicht so ganz hin.

Ich bin jetzt auf diesem Stand:
Ich habe eine Exceltabelle in der die "Koordinaten" (oder von mir aus Wertetrios) stehen.

CO.xls
X   Y   Z
AA 01 CW1
AB 01 CW1
AA 05 CW5
...


Ich habe für jede "Koordinate" eine eigene Tabelle (in Access) in der die Möglichkeiten aufgelistet sind

tbl_X [AA,AB,AC,AD..CR]
tbl_Y [001..029]
tbl_Z [CW1..CQ5]

Ich habe eine gemeinsame Tabelle in der die Werte vereint werden sollen, so wie sie in der Exceltabelle stehen, aber eben mit ihren Foreign Keys
tbl_CO
FK_X
FK_Y
FK_Z

Und zum Schluss soll also in der tbl_CO stehen:
FK_X FK_Y FK_Z
1       2      5
3       7      12
...
(jeweils die Foreign Keys der Wertetrios wie in CO.xls beschrieben)

Wie man eine Anfügeabfrage macht habe ich inzwischen rausgekriegt, aber wie ich die Anfrage mit den Foreign Keys gemäß der Exceltabelle fülle noch nicht.
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23320
Re: Komfortabler Import
« Antwort #5 am: Mai 17, 2010, 10:38:34 »
Hallo,

und wo findet man jeweils den Key (Primärschlüssel) , der zu einem X- (respektive Y-, Z-) Koordinatenwert gehört?

Warum willst Du in dieser Konstellation überhaupt mit einer extra ID (Fremdschlüssel) arbeiten?

Offline OPS

  • Access-User
  • *
  • Beiträge: 76
Re: Komfortabler Import
« Antwort #6 am: Mai 17, 2010, 10:52:11 »
Der Primärschlüssel ist die ID der jeweiligen Koordinate.
Also
tbl_X
ID_X [1..99]
X [AA, AB, AC.. AR]


Gibt es denn eine andere Möglichkeit außer über einen Fremschlüssel für diese Konstellation?

Bisher war diese Datensammlung eine große Anzahl unzusammenhängender Tabellen die jetzt eine Datenbank werden sollen.
Es gibt bereits ein Formular in das man neue "Desktiles" (so heißen die Dinger) eingeben kann, welche eindeutig über die drei "Koordinaten" identifiziert werden. Damit der Benutzer nicht unzulässige Koordinaten eingibt, doppelte Koordinaten usw. geschieht dies jeweils über lookup-Tabellen in denen alle möglichen Werte für X,Y und Z schon vordefiniert sind.
Im Grunde könnte der Benutzer für neue Werte jetzt schon loslegen, aber ich möchte natürlich vorher alle alten Werte übernehmen. Doch diese alten Werte stehen in einer Exceltabelle undzwar mit ihrem Namen, nicht ihrer Position (FK) in den Lookups.
Also eine Exceltabelle verwandelt sich in 4 Tabellen, 3 in denen jeweils die Koordinatenmöglichkeiten stehen (AA, AB...; 001, 002...;CW1, CW2...) und einer in der die FKs der Koordinaten stehen (1,2,3;1,2,4;1,2,5...)

Ist das ein so ungewöhnliches Problem, ich hätte gedacht soetwas kommt andauernd vor.
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23320
Re: Komfortabler Import
« Antwort #7 am: Mai 17, 2010, 11:09:08 »
Hallo,

habe doch alles schon beschrieben, wie sowas gemacht wird...

"Gibt es denn eine andere Möglichkeit außer über einen Fremschlüssel für diese Konstellation?"

Ein ZUSÄTZLICHES ID-Feld für einen Koordinatenwert ist überflüssig (wenn man mal von evtl. Performanceoptimierung absieht). Der Wert selber kann der Primärschlüssel sein.