Zum Inhalt springen

Undefinierte Anzahl an Bildern in Datenbank speichern


SeToY

Empfohlene Beiträge

Mahlzeit,

ich habe derzeit ein Problem... Ich versuche gerade, Bilder in einer Datenbank zu speichern - an sich ja kein Problem.

Nur habe ich jetzt z.B. nur eine feste Anzahl an Bildern, die ich dann in den Spalten "Picture1" bis "Picture5" speichere...

Gibt es eine Möglichkeit, dem Nutzer zu erlauben, eine undefinierte Anzahl an Bildern zu speichern, ohne, dass ich für jedes Bild eine Spalte anlegen müsste?

Danke und lieben Gruß

Setoy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn ich dich jetzt richtig verstanden habe, speicherst du zurzeit die Bilder zusammen mit Daten von den Nutzern?

Dann wäre es besser wenn du einfach zwischen den Nutzerdaten und den Bildern eine 1:n Beziehung aufbaust. Das heißt du speicherst die Bilder in einer eigenen Tabelle und speicherst jedes Bild mit der jeweiligen ID des dazugehörigen Benutzers ab. Dadurch kannst du dann jedem Benutzer seine Bilder zuordnen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die spaltenweise Abbildung verstößt eh gegen die Normalisierung, somit ist absolut falsch. Wie es mein Vorposter geschrieben hat, sollte das ganze passend modelliert werden und die Beschränkung auf 5 kann man entweder durch die Anwendung oder Trigger abfangen. Ansonsten sollte man sich auch überlegen, ob man die binären Daten direkt innerhalb der Datenbank speichert, als Alternative speichert man die Bilder innerhalb des Dateisystems und referenziert über die Dateinamen / Schlüssel der Tabelle

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vielen Dank für eure Antworten!

Wenn ich dich jetzt richtig verstanden habe, speicherst du zurzeit die Bilder zusammen mit Daten von den Nutzern?.

Das ist (momentan noch) richtig.

Dann wäre es besser wenn du einfach zwischen den Nutzerdaten und den Bildern eine 1:n Beziehung aufbaust. Das heißt du speicherst die Bilder in einer eigenen Tabelle und speicherst jedes Bild mit der jeweiligen ID des dazugehörigen Benutzers ab. Dadurch kannst du dann jedem Benutzer seine Bilder zuordnen.

Das ist eine gute Idee - durch die Auflösung der Spalten (brauche ja nurnoch 3: Id, UserId und Picture) hätte ich dann auch eine erhöhte "Ordnung" innerhalb der Tabellen :)

Werde ich mal so umsetzen, vielen Dank euch :)

Liebe Grüße

Setoy

Link zu diesem Kommentar
Auf anderen Seiten teilen

und die Beschränkung auf 5 kann man entweder durch die Anwendung oder Trigger abfangen.

Nein kann man nicht, es sei denn, man sperrt für jeden Insert die komplette Tabelle. Die einzige Möglichkeit das zu realisieren und die Multiuserfähigkeit zu erhalten ist die Kombination eines Check Constraints mit einem Unique Constraint:.

Ein Feld wird per Check Constraint so definiert, dass dort nur Ziffern von 1-5 eingegeben werden dürfen. Über ein weiteres geeignetes Feld z.B. den FK zur übergeordneten Tabelle und dem oben erwähnten Feld wird ein Unqiue Constraint gelegt. Erst jetzt ist auch über die Datenbank sichergestellt, dass jeder User nur maximal 5 Einträge einstellen kann.

Dim

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...