Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Firebird Grafiken speichern (https://www.delphipraxis.net/134243-firebird-grafiken-speichern.html)

f4k3 18. Mai 2009 13:37

Datenbank: Firebird • Version: 2.1 • Zugriff über: ZEOS

Firebird Grafiken speichern
 
Moin Moin liebe DPler ;)

ich möchte gerne Grafiken in einer Datenbank speichern ;) nun bei Paradox :roteyes: ging dass ja ganz einfach :P
Da gabs nämlich nen Datentyp für ;) bei Firebird gibt es keinen ... so nun meine Frage an euch ...

Gibt es einen Datentyp bei Firebird der sich für solche Aktionen misshandeln lässt? :D

Also bis auf Blob würde ich keinen sehen ... da ich bisher noch nicht mit Blob gearbeitet habe stellt sich nun
die Frage, wie man, wenn man es realisieren kann, mit Blob durchführt? :wiejetzt:

Aus Wiki weiß ich dass einige DBMS-Systeme es erlauben, quasi komplette Dateien in Blob-Feldern zu speichern.

Mithrandir 18. Mai 2009 13:41

Re: Firebird Grafiken speichern
 
Hi,

Das geht auch mit ZEOS und Firebird. Wenn du dir aber einen Gefallen tun willst, dann speicherst du das Bild auf der Festplatte und speicherst eine Referenz darauf in der DB. Ist wesentlich einfacher und transparenter.

Ansonsten:

http://www.delphi-treff.de/tutorials...ebird/page/17/

mkinzler 18. Mai 2009 13:58

Re: Firebird Grafiken speichern
 
Zitat:

Das geht auch mit ZEOS und Firebird. Wenn du dir aber einen Gefallen tun willst, dann speicherst du das Bild auf der Festplatte und speicherst eine Referenz darauf in der DB. Ist wesentlich einfacher und transparenter.
Kommt darauf an, ob auf die Grafiken ausserhalb des Programmes noch Zugriff möglich sein soll.
Wenn man sie in der Datenbank gespeichert sind, braucht man sich keine Gedanken um Datenpfade, Netzfreigaben, Datenpfadumzug usw. machen, was sonst u.U. nötig wäre

hoika 18. Mai 2009 14:10

Re: Firebird Grafiken speichern
 
Hallo,

ab einer bestimmten Größe wird FB mit eingebundenen Grafiken aber langsamer.


Heiko

mkinzler 18. Mai 2009 14:11

Re: Firebird Grafiken speichern
 
Zitat:

Zitat von hoika
Hallo,

ab einer bestimmten Größe wird FB mit eingebundenen Grafiken aber langsamer.


Heiko

Dürfte es aber nicht, da Blobs (ab einer bestimmten) in einem eigene Bereich ausserhalb der Tabelle gespeichert werden, dann befindet sich nur eine Zeiger (Blob-ID) auf die eigenen Daten in der Tabelle

hoika 18. Mai 2009 14:32

Re: Firebird Grafiken speichern
 
Hallo,

ist schon klar.

Ich kenne aber mindestens einen Test,
indem das Speichern von Bildern in der DB (~100.000 jpegs)
zu einer spürbaren Verlangsamung führte.

Bei einem Test mit Oracle (9i) gab es keine Probleme.

Im Zweifelsfall muss man das einfach Ausprobieren.


Heiko

mkinzler 18. Mai 2009 14:41

Re: Firebird Grafiken speichern
 
Beo Oracle wird grundsätzlich separat gespeichert. FireBird entscheidet, ob inline oder nur der Verweis gespeichert wird.

f4k3 18. Mai 2009 14:48

Re: Firebird Grafiken speichern
 
Zitat:

Zitat von Daniel G
Hi,

Das geht auch mit ZEOS und Firebird. Wenn du dir aber einen Gefallen tun willst, dann speicherst du das Bild auf der Festplatte und speicherst eine Referenz darauf in der DB. Ist wesentlich einfacher und transparenter.

Ansonsten:

http://www.delphi-treff.de/tutorials...ebird/page/17/

Also speichern auf der Festplatte würde evtl. zur Dateninkonsistenz führen, wenn jemand dass Bild verschiebt,umbenennt oder löscht.
Die Anzahl der zu speichernden Bilder wird vielleicht in zehn Jahren die 100er Grenzen überschreiten ... also es werden nicht
sehr viele Bilder gespeichert. Die Auflösung der Bilder wird 64x64 im JPEG-Format gespeichert. Die Qualität liegt bei 80 % ... Es wird also
auch nicht sehr viel Speicherplatz benötigt.

Unter diesen Gesichtspunkten möchte ich es also schon lieber in der Datenbank abspeichern.

Danke für den Link ;)

f4k3 18. Mai 2009 14:51

Re: Firebird Grafiken speichern
 
Zitat:

Zitat von mkinzler
Zitat:

Das geht auch mit ZEOS und Firebird. Wenn du dir aber einen Gefallen tun willst, dann speicherst du das Bild auf der Festplatte und speicherst eine Referenz darauf in der DB. Ist wesentlich einfacher und transparenter.
Kommt darauf an, ob auf die Grafiken ausserhalb des Programmes noch Zugriff möglich sein soll.
Wenn man sie in der Datenbank gespeichert sind, braucht man sich keine Gedanken um Datenpfade, Netzfreigaben, Datenpfadumzug usw. machen, was sonst u.U. nötig wäre

Zugriff außerhalb des Programms ist nicht notwendig ...
Wenn ein Benutzer sein Anzeigebild ändern möchte, kann er das vorhande mit einem neuen ersetzen.

Außerdem ist der FB-Server nicht lokal installiert ... sondern auf einem Server in der Domäne ...
und die Grafiken hin zu kopieren ist völlig witzlos ... wenn ich die Daten in der Tabelle speichern kann.

Die Grafiken zu kopieren wäre allenfalls eine Notlösung ;)

f4k3 18. Mai 2009 14:52

Re: Firebird Grafiken speichern
 
Zitat:

Zitat von f4k3
Zitat:

Zitat von mkinzler
Zitat:

Das geht auch mit ZEOS und Firebird. Wenn du dir aber einen Gefallen tun willst, dann speicherst du das Bild auf der Festplatte und speicherst eine Referenz darauf in der DB. Ist wesentlich einfacher und transparenter.
Kommt darauf an, ob auf die Grafiken ausserhalb des Programmes noch Zugriff möglich sein soll.
Wenn man sie in der Datenbank gespeichert sind, braucht man sich keine Gedanken um Datenpfade, Netzfreigaben, Datenpfadumzug usw. machen, was sonst u.U. nötig wäre

Zugriff außerhalb des Programms ist nicht notwendig ...
Wenn ein Benutzer sein Anzeigebild ändern möchte, kann er das vorhande mit einem neuen ersetzen.

Außerdem ist der FB-Server nicht lokal installiert ... sondern auf einem Server in der Domäne ...
und die Grafiken hin zu kopieren ist völlig witzlos ... wenn ich die Daten in der Tabelle speichern kann.

Die Grafiken zu kopieren wäre eine Notlösung ;)

Falscher Button :dancer:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:45 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz