PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ACCESS Frage


Gast
2008-10-01, 22:31:52
Es geht um folgende Tabelle:
http://www.abload.de/thumb/1vwz.jpg (http://www.abload.de/image.php?img=1vwz.jpg)

es wird eine csv datei aus dem onlineshop importiert und in dieser tabelle gespeichert.
mein problem:
in den spalten "amethyst" usw steht jeweils die anzahl des produktes mit diesem namen.

ich bekomme keine abfrage hin, die mir pro kundennummer den namen des produktes und die menge ausgibt.
ich denke, dass das problem folgendes ist:
ich kann nicht nach dem spaltenname abfragen und dessen inhalt, also die überschrift oder bezeichnung des produktes und die menge.

hat einer eine idee wie ich das lösen kann? csv datei ist leider vorgegeben. in der 1. zeile stehen die kd-nr, anschrift usw und alles Produkte des onlinshops hintereinander durch ; getrennt.
in der 2. zeile kommen dann die reelen daten und eben 0;1;0;0;1;2; usw je nach anzahl der bestellten menge.

steh grad voll aufm schlauch

rad05
2008-10-02, 09:32:40
Das eigentliche Problem ist das DB-Design. Bei der Tabelle ist jedes Produkt eine eigene Spalte. Was ist wenn ein Produkt dazu kommt? Dann musst du die Tabelle ändern.
Eigentlich sollte es zwei (bzw. sogar drei) Tabellen geben. Eine Tabelle Bestellung, eine Tabelle Produkt (und eine Tabelle Kunde).
In der aktuellen Form ist das ganze relativ unbrauchbar.

Gast
2008-10-02, 10:12:18
ich weiss, ist ein erster versuch.
ich hab schon ne extra tabelle kunden, bestellungen und artikel
in diese auf dem bild, wird nur die csv importiert und dann die kundentabelle gefüllt usw.

in der csv steht jedes produkt durch ; getrennt und in der zeile darunter dann die menge

beispiel:

name;str;ort;summe;porto;amythyst;Blau;Rot
mustermann;musterstr;München;11,95;0;1;0

d.h. Mustermann hat 1 x Blau bestellt.

mein problem ist nun, dass ich nicht weiss wie ich per SQL abfrage abfragen kann, unter welchem produktnamen die menge steht. UND: wenn jemand 1x amethyst bestellt und 2 x blau.

Berni
2008-10-02, 12:58:13
Wo willst du denn die Abfragen überhaupt nutzen? Als Formular oder Bericht?
Das Sauberste wäre, wenn du beim Import das Ganze in mehrere Tabellen auftrennst (evtl. erst so importieren wie jetzt und dann über ein VBA-Skript auf die Tabellen umschichten).
Man kann auch mit einer Programmiersprache deiner Wahl (PHP?) die CSV-Datei vorher in adäquate SQL-Befehle umwandeln wenn man kein VBA hat.
Möglich ist es bei Formularen und Berichten aber auch, mit entsprechenden Textfeldern und vielleicht auch VBA was Ansprechendes zu basteln.

Gast
2008-10-02, 19:10:29
wie würdest du die oben genannten 2 zeilen aus der csv datei in die tabellen bringen?

Berni
2008-10-02, 21:10:35
Ich würde an deiner Stelle ein VBA-Skript bauen, das die Daten in mehrere Tabellen umschichtet. Wenn die neuen Tabellen normalisiert sind (vgl. http://de.wikipedia.org/wiki/Normalisierung_(Datenbank) ), dann sind die Abfragen auch kein Problem mehr.