Hallo,
ich bastle gerade an einer Datenbank und es tauchen ständig neue Fragen auf, die mir leider keine Ruhe lassen. In meiner Datenbank möchte ich beispielhaft verschiedene Peripheriegeräte speichern. Jeder Peripheriegerättyp besitzt unterschiedliche Eigenschaften und erhält daher eine eigene Tabelle:
produkt
+------------+--------------+-------------+--------------+
| produkt\_id | hersteller | produktname | type\_codiert |
+------------+--------------+-------------+--------------+
| 1 | Macrosoft | Speedprint | 1 |
| 2 | Techsoft | Hi-Scan | 3 |
| 3 | Geraetomatic | Cutomatic | 2 |
| 4 | Macrosoft | Printbox | 1 |
+------------+--------------+-------------+--------------+
typ
+-------------+----------+
| typ\_codiert | typ\_name |
+-------------+----------+
| 1 | Drucker |
| 2 | Plotter |
| 3 | Scanner |
+-------------+----------+
drucker
+------------+--------------------+---------------+--------------------+
| produkt\_id | druckertyp\_codiert | seiten\_minute | beidseitig\_codiert |
+------------+--------------------+---------------+--------------------+
| 1 | 1\* | 15 | 1 |
| 4 | 2 | 12 | 2 |
+------------+--------------------+---------------+--------------------+
\* Anmerkung: z.B. "1" für "Laser" und "2" für "Tintenstrahl"
plotter
+------------+------------------+
| produkt\_id | max\_schnitttiefe |
+------------+------------------+
| 3 | 0.8 |
+------------+------------------+
scanner
+------------+----------------+--------------------+
| produkt\_id | max\_aufloesung | durchlicht\_codiert |
+------------+----------------+--------------------+
| 2 | 1200 | 1\* |
+------------+----------------+--------------------+
\* Anmerkung: z.B. "1" für "Ja" und "2" für "Nein"
Jetzt habe ich etwa ein Suchformular, welches eine Suche nach dem Hersteller und/oder dem Produktnamen erlaubt. Suche ich etwa nach „Techsoft“ sollte die Ausagabe wie folgt aussehen:
Hersteller: Techsoft
Produktname: Hi-Scan
Typ: Scanner
Maximale Auflösung: 1200dpi
Durchlichteinheit: Ja
Gut, die Ausgabe lässt sich in PHP mit einer Switch Anweisung für die Fälle „Drucker“, „Plotter“ und „Scanner“ gestalten. Aber wie kann bzw. soll die SELECT Abfrage aussehen?
Schöne Grüße, Q_5