PDA

Vollständige Version anzeigen : Mehrere Werte für 1ne Spalte


bigdesaster
15.01.2003, 18:54
Hallo.

Ich hab in ner Datenbank ne Tabelle mit 8 Spalten und an die 600 Datensätze. Wie kann ich in einer Spalte (z.B. "Seriennummer") für einen Datensatz eine unbekannte Anzahl an Werten hinterlegen. Im jedem Datensatz sollen andere Nummern hinterlegt werden können. Ich muss auch nach jeder dieser nummern suchen können

Danke

Hondo
15.01.2003, 19:03
Hallo,
Wie kann ich in einer Spalte (z.B. "Seriennummer") für einen Datensatz eine unbekannte Anzahl an Werten hinterlegen. Im jedem Datensatz sollen andere Nummern hinterlegt werden können. Ich muss auch nach jeder dieser nummern suchen können

Wie jetzt - zusätzliche Daten zu jedem Datensatz oder zu jedem Feld?
Irgendwie scheint dein Datenbankmodell nicht zu stimmen. Du benötigst noch mindestens eine weitere Tabelle um zusätzliche Daten zu einem Datensatz zu speichen.
In diese Tabelle gehört der Primärschlüssel der ersten Tabelle und die jeweilige Information in z.B. einem Textfeld.
HTH Andreas

bigdesaster
16.01.2003, 11:23
Ich will hinter jedem Datensatz eine unbekannte Anzahl an Seriennummern hinterlegen, so das ich den Datensatz unter den hinterlegten Nummern finden kann

Hondo
16.01.2003, 12:05
Hallo,
dann brauchst du wie zuvor schon gesagt eine zweite Tabelle:
Die zusätzliche Tabelle ist mit der ersten Tabelle 1:n zu verknüpfen.

ID; FremdSchlüssesID; Seriennummer
1 ; 15 ; 4711
2 ; 15 ; 4713
3 ; 24 ; 4912

Im Beispiel ist zum Datensatz mit ID Nr. 15 2 Seriennummern 4711 und 4713 hinterlegt. Zum Datensatz mit ID Nr. 24 ist nur 1 Seriennummer hinterlegt.

Gruß Andreas

bigdesaster
17.01.2003, 18:29
Ah danke. Jetzt hab ich folgendes Problem:

Ich suche über eine Abfrage nach einem DS im Feld "Typ" der Tabelle Daten. Wenn jetzt mehrere Seriennummern unter einem DS hinterlegt sind. Liefert mir die Abfrage mehrere Ergebnisse.

Typ Seriennummer Bemerkung
ai 123456 abcd
ai 234567 abcd

In der Tabelle ist der Typ ai nur einmal hinterlegt (Darf es auch nur einmal geben)
Ich darf aber jeden Datensatz nur einmal haben. Beide Seriennummern sollten z.B. in einem Listenfeld für den Artikel angezeigt werden.

Axel37
17.01.2003, 18:36
viel zu umständlich,
lass doch einfach ein kombinationsfeld die gleiche tabelle ständig auslesen, so hast du die möglichkeit eine selbstlernende tabelle zu erhalten, mittels refresh wird diese dann aktuellgehalten. so musst du die vorhandenen werte nicht in eine zweite tabelle schreiben
bsp


SELECT DISTINCTROW [_SN].einbauort, Count([_SN].einbauort) AS [Anzahl von einbauort]
FROM _SN
GROUP BY [_SN].einbauort
HAVING (((Count([_SN].einbauort))>0))
ORDER BY [_SN].einbauort;

arbeite ständig damit und daten immer topaktuell ohne platzverschwendung

axel

Hondo
17.01.2003, 18:39
Hallo,
zeig doch mal welche Tabellen du hast mit welcher Struktur,
ist viel einfacher darauf zu antworten.
Gruß Andreas

bigdesaster
17.01.2003, 19:25
@axel37
Ich verstehe nicht so richtig was du meinst

@hondo
Ich hab eine Tabelle "Daten" mit den Feldern:
Typ ; Hersteller ; Bezeichnung ; Bemerkung ; ID
abc ; Weisnich; Schalter ; keine; 1
efg ; egal ; Lampe ; lieferbar; 2

Typ ist indiziert ohne Duplikate

Tabelle "Seriennummer"
ID ; FremdID; Seriennummer
1 ; 2 ; 123456
2 ; 2 ; 789012
3 ; 1 ; 555555

Wie in deinem beispiel.
ID von "Daten" und "FremdID" von "Seriennummer" sind miteinander verknüpft.
Über ein Formular kann ich nach jedem der Felder aus "Daten" suchen