Re: Datenbank - nur wie??
Geizhals » Forum » Programmierung » Datenbank - nur wie?? (8 Beiträge, 769 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
Datenbank - nur wie??
07.11.2013, 20:17:22
Grüß euch!

Ich habe folgendes Problem:
Eine Datenbank zu verschiedenen Tieren soll vom Betreiber mit Bildern gefüllt werden und veschiedenen Texten (Haltungsberichte, Zuchtberichte etc.) versehen werden.

Wie gehe ich dies am Besten an?
Dachte daran eine PHP Maske zu machen, über die man (nur der Admin eben) zu einem Tier folgende Einträge machen kann:
Deutscher Name: Hauskatze;
Wissenschaftlicher Name: Felis felis;
Bild: miau.jpg, mietze.jpg, kitty.jpg;
Text: Nahrung, Haltung;
Nummerierung und Datum des Eintrag.

Soweit ist das alles mal kein Problem.
Aber: Muss halt jetzt 3 Bilder und 2 Texte definieren, aber ich will nicht bei jedem Vieh auf 3 Bilder und 2 Texte limitiert sein. Auch will ich keine maximale Anzahl definieren, da sich dies ja beliebig erweitern lassen soll.
Die Tabelle soll sich also dynamisch je nach Anzahl/Verfügbarkeit des Content erweitern.

Meine 1. Frage zu Bildern und Texten:
Wie mache ich dies am Besten?
In der DB nur den Link relativ zur Datei speichern?
Nur wie mache ich es, dass die Datei dann korrekt hochgeladen wird?

2. Frage: Wie kann ich eine unterschiedliche Anzahl von Bildern/Texten zum Datensatz hinzufügen und ordnen? Gibt bei Hauskatze sicher mehr Texte und Bilder als zum Igel.

Es soll dann nämlich ein JAVA Programm per Internet auf die DB zugreifen und die Daten abrufen sowie anzeigen. Eventuell auch per Browser.

Stehe da im Moment leider an.
Eventuell etwas anderes als MySQL verwenden?

Please help!!!

Antworten PM Alle Chronologisch
 
Melden nicht möglich
.  Re: Datenbank - nur wie??
 (hellbringer am 07.11.2013, 20:40:40)
..  Re(2): Datenbank - nur wie??  (Somnatic am 07.11.2013, 20:42:21)
.
Re: Datenbank - nur wie??
07.11.2013, 20:41:44
Dir fehlen grundsätzliche Datenbankkenntnisse - da kann nichtmal MySQL was dafür ;-)

I.A. legst du eine zusätzliche Tabelle "Bilder" an. Die hat (mindestens) zwei Spalten - einmal eine Id (die auf den eigentlichen Datensatz verweist (Foreign Key), der eigentliche Datensatz hat ebenfalls eine Id ("Primary Key")). Die zweite Spalte beinhaltet dann die Rohdaten des Bildes (also halt irgendein Binary Datentyp).

Ein SQL Select statement würde dann z.B. so aussehen:

select tiere.id, tiere.name, tiere.DeutscherName, bilder.binaries from tiere, bilder where tiere.id = bilder.id and tiere.id = "gewünschte Id"

(oder mit einem join)

select tiere.id, tiere.name, tiere.DeutscherName, bilder.binaries from tiere join bilder on tiere.id = bilder.id where  tiere.id = "gewünschte Id"

du bekommst jetzt mehrere Datensätze die alle dieselbe ID haben (also auf dasselbe Tier verweisen), bei jedem Datensatz ist dann aber ein (anderes) Bild dabei. Du kannst also beliebig viele Bilder ablegen ohne dass du Spalten definieren musst.

Das Ganze nennt sich dann übrigens ER (Entity Relationship) Modell falls du es googlen willst.

Interessieren dich nur die Bilder zu einer bestimmten ID reicht natürlich auch ein

select bilder.binaries from bilder where id = ...

Wenn der Sturm losbricht,
verstummen die Einen vor Schrecken,
und die Anderen breiten, einem Adler gleich, die Flügel aus
und schwingen sich empor.

Herzlichen Dank an Raydoo für die Fotos

Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
.  Re: Datenbank - nur wie??  (ZombyKillah am 07.11.2013, 21:45:08)
.  Re: Datenbank - nur wie??
 (Fly am 07.11.2013, 21:49:33)
..  Re(2): Datenbank - nur wie??  (Leichtgewicht am 30.12.2013, 16:24:51)
...  Re(3): Datenbank - nur wie??  (zeddicus am 13.01.2014, 11:09:51)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung