Beliebig viele und verschiedene Messwerte in SQL

Hallo zusammen,
ich habe folgendes Problem. Und zwar ich muss ein Programm schreiben (My-SQL) was Messwerte in einem SQL-Server speichert.
Es gibt 10 verschiedene Maschinen die gleichzeitig arbeiten und deren Daten im Server gespeichert werden müssen. Die Messdaten (CSV) sollen unter der jeweiligen Auftragsnummer in einer Tabelle gespeichert werden, wenn der Auftrag fertig ist soll dieser geschlossen werden und eine neue Auftragsnummer geöffnet werden und das gleiche von vorne.

Gibt es das schon fertige Programme oder Befehle dafür???

Mit freundlichen Grüßen

Wasili

Hallo Wasili,

Entschuldigung, wenn ich es Dir sehr direkt sage: Aber Du scheinst noch nie eine Datenbank programmiert zu haben? [Leider ist Deine Vita völlig unausgefüllt.]

Das wichtigste, fehlende Bestandteil ist erstmal das Datenmodell (aus dem Bauch heraus Tabellen Maschine, Auftrag und Messwerte). Aber das angefragte Thema (fertige) Implementierung kann noch garnicht beantwortet werden, da noch lange nicht alle Anforderungen hier vorliegen (automatische oder händische Einlesung, wenn die Messdaten vorliegen oder gar die Frage nach der zeitlichen Kritikalität oder die gewünschten anschliessenden Abfragen). All diese Angaben können Einfluß auf Detailfragen im Datenmodell und die Implementierung haben. [Genereller Hinweis: Diese Aufzählung ist bei weitem nicht vollständig].

Oder wesentlich kürzer zusammengefasst: Ein fertiges Programm dazu gibt es mit 99,99% Wahrscheinlichkeit nicht.

MfG Georg V.

Hallo Georg,

ja da hast du recht das wird meine erste Datenbank die ich Programmieren muss. Ich mache gerade eine Weiterbildung zum Techniker und das wird meine Technikerarbeit. Das gesamt Projekt ist viel umfangreicher deswegen mache ich das mit zwei anderen läuten die die andere bereiche machen.

Also ich versuche mal dir das Projekt zu beschreiben.

Der Auftrag wird über ein Barcodesystem eingelesen und Produktionsstraße stellen sich automatisch auf den eingelesenen Auftrag um. Am ende der Produktionsstraße stehen zwei Maschinen die die Produkte überprüfen sollen auf die Vorgabe des Auftraggebers. Und die Gemessenen werte sollen über ein Bus-System in einem SQL-Server Gespeichert werden.

Im Barcode enthalten ist die Auftragsnummer, Auftragsmenge (wie viele Teile produziert werden sollen) und die sollwerte die die Produkte haben sollen.

Im Server Sollen dann die Gemessenen werte wie folgt gespeichert werden.

Wenn der Barcode eingelesen wird soll die Auftragsnummer angelegt werden und unter der Auftragsnummer in einer Tabelle die gemessenen werte abgespeichert werden.

Z.B
Auftrag 0000001

Artikel 1 | 1 gemessener wert | zweiter gemessener wert | Datum | Uhrzeit | OK or Not OK
Artikel 2 | 1 gemessener wert | zweiter gemessener wert | Datum | Uhrzeit | OK or Not OK
• .
• .
• .

Und diese Messwerte sollen dann Über einen PC abgefragt werden. Was das Problem von meinem dritten Kollegen ist.

Mein Bereich ist nur die Auftagsnummer anzulegen und die jeweiligen messwerte im Server zu speichern.

Ich hoffe das hilft dir weiter

Gruß

Wasili

Und diese Messwerte sollen dann Über einen PC abgefragt
werden. Was das Problem von meinem dritten Kollegen ist.

Mein Bereich ist nur die Auftagsnummer anzulegen und die
jeweiligen messwerte im Server zu speichern.

welche programmiersprachen kannst du denn ??

microsoft windows PC oder Linux PC oder Macintosh ?

Ich benutze einen Microsoft Windows PC
Programmiersprachen kann ich nur C aber da bin ich auch nur Anfänger.
Das Programm soll in My SQL geschrieben werden. Und da kann ich schon ne Datenbank anlegen und Tabellen erstellen und Sachen in Tabellen eintragen.

Gruß

Wasili

AUFTRAGSNUMMER
WERT1 | WERT2 | …
WERT1 | WERT2 | …

hmm, also man könnte 2 tabellen erzeugen.

LOAD DATA [LOCAL] INFILE ‚file_name.txt‘ [REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY ‚\t‘]
[OPTIONALLY] ENCLOSED BY "]
[ESCAPED BY ‚\‘]]
[LINES TERMINATED BY ‚\n‘]
[IGNORE number LINES]
[(col_name,…)]

erste tabelle nur für die auftragsnummer , ergo alles andere textfelder damit es kein problem beim einlesen gibt.

AUFTRAGSNUMMER | 0 | 0
WERT1 | WERT2 | 0
WERT1 | WERT2 | 0

dann eine 2 Tabelle erzeugen wobei man einfach [IGNORE number LINES] die erste zeile ignoriert.

WERT1 | WERT2 | 0 | 0
WERT1 | WERT2 | 0 | 0

nun kann man sich das zusammenbauen oder die 2 tabelle füllen mit der Auftragsnummer der 1 Tabelle. Oder eine ganz neue Tabelle erzeugen.

http://www.little-idiot.de/mysql/mysql-121.html

viel glück ,

Danke schön ich werde das mal ausprobiren.

Gruß

Wasili