AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Bild aus Access DB auslesen und verarbeiten - *.png
Thema durchsuchen
Ansicht
Themen-Optionen

Bild aus Access DB auslesen und verarbeiten - *.png

Ein Thema von Jens Hartmann · begonnen am 11. Dez 2014 · letzter Beitrag vom 12. Dez 2014
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#11

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 14:39
Ich habe das übrigens in Access selber schon versucht. Das mit dem Nachschlagen ist bei diesen Datentypen nicht möglich. Ich werde das ganze dann wohl über einen Jon lösen müssen.

Danke trotzdem und Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#12

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 15:21
Ich werde das ganze dann wohl über einen Jon lösen müssen.
Vielleicht Grundlegend nochmal beschrieben. Ich habe eine Tabelle mit Einträgen und jeweils einem Feld "Typ" sowie ein Tabelle "Symbole". In der Tabelle Symbole sind die Bilder gespeichert und über den Typ möchte ich diese zur Ergebnismenge holen. Es gibt ca. 20 Bilder, welche jedoch 10.000 mal benötigt werden.
OK. Dann läufst du genau in das von Dejan Vu angemerkte Problem hinein. Es gibt ja nur 20 Bilder, aber so lädst du jedes Bild N mal in dein Dataset. Deswegen wäre es evtl. doch interessant zu wissen, was du mit den Daten weiter machen willst. Soll das Symbol mit in einem Grid angezeigt werden, oder...

Evtl. lädst du ja die 20 Bilder vorab, packst die in eine ImageList oder irgendeine andere Liste oder Array und "malst" die dann dahin, wo du die brauchst.
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#13

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 15:41
Wie ist das denn eigentlich in Access selber, also wenn man das auch als Front-End benutzt? Kann man da die OLE-Felder direkt in ein Formular oder sowas einbinden?
Ja, kann man. Sogar in Berichten. Das schimpft sich dann "gebundenes Objektfeld".
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#14

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 20:46
Also ich brauche die Bilder in einem Report. Diese müssen jeweils dem entsprechenden Eintrag zugewiesen angezeigt werden. Das mit der Imagelist habe ich vorab auch überlegt. Ich muss die Bilder aber an FastReport übergeben und diese sollen ja Datensatz bezogen sein. Daher müsste ich die Bilder ja auch in dem Dataset zur Verfügung haben. Oder?
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#15

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 23:21
Es gibt immer den Umweg über ein TfrxUserDataset.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#16

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 11. Dez 2014, 23:50
Es gibt immer den Umweg über ein TfrxUserDataset.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#17

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 12. Dez 2014, 03:50
Ich habe das übrigens in Access selber schon versucht. Das mit dem Nachschlagen ist bei diesen Datentypen nicht möglich. Ich werde das ganze dann wohl über einen Jon lösen müssen.
Irgendwie scheine ich dein Problem nicht so recht zu begreifen: Du hast eine Haupt-Tabelle, die sagen wir mal Personen enthält: Id (Primary Key, AutoInc), Vorname (Text), Nachname (Text), Bild (Zahl). Dann hast du z.B. eine Tabelle, die Fotos von diesen Personen enthält: Id (Primary Key, AutoInc), Bild (Ole-Objekt). In der Spalte Bild deiner Haupttabelle trägst du via Nachschlage-Assistent die Spalte Id aus deiner Bild-Tabelle ein und gut ist. Mit anderen Worten: Du wählst nicht die Spalte mit dem Ole-Objekt als Verknüpfung, sondern die Spalte mit der Id (AutoInc).
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#18

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 12. Dez 2014, 08:30
Ich habe das übrigens in Access selber schon versucht. Das mit dem Nachschlagen ist bei diesen Datentypen nicht möglich. Ich werde das ganze dann wohl über einen Jon lösen müssen.
Irgendwie scheine ich dein Problem nicht so recht zu begreifen: Du hast eine Haupt-Tabelle, die sagen wir mal Personen enthält: Id (Primary Key, AutoInc), Vorname (Text), Nachname (Text), Bild (Zahl). Dann hast du z.B. eine Tabelle, die Fotos von diesen Personen enthält: Id (Primary Key, AutoInc), Bild (Ole-Objekt). In der Spalte Bild deiner Haupttabelle trägst du via Nachschlage-Assistent die Spalte Id aus deiner Bild-Tabelle ein und gut ist. Mit anderen Worten: Du wählst nicht die Spalte mit dem Ole-Objekt als Verknüpfung, sondern die Spalte mit der Id (AutoInc).
Beim Nachschlagen sind immer 3 Werte involviert:
  1. Bild-ID
  2. ID (Bildertabelle)
  3. Bild (Bildertabelle)
Das Problem ist nicht das Nachschlagen selber, sondern, dass ein Bild in einem BLOB-Feld ist und die BLOB-Felder eben nicht als Berechnetes oder Nachschlage-Feld genommen werden können. Das ist eine Einschränkung des Delphi-DataSets. Rein logisch würde das funktionieren.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#19

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 12. Dez 2014, 09:32
Er soll ja auch nicht das Feld BILD der Bildertabelle als Nachschlagefeld wählen, sondern aus eben dieser Tabelle das Feld ID, das als Primary Key festgelegt sein sollte. Wäre es im Falle des TE nicht sogar am Einfachsten, er würde seiner Haupttabelle einfach die Spalte BILD (Ole-Object) hinzufügen, falls er pro Datensatz nur ein Bild zu speichern gedenkt?

Ich hab z.B. in etlichen Datenbanken für einen Datensatz der "Haupt"-Tabelle mehrere Bilder (z.B. für meine Währungs-DB, die alle Währungen der Welt enthält). Da gibt es dann eine "Zwischen"-Tabelle, die die Verknüpfungen enthält, z.B. für Euro alle Geldscheine und Münzen mit Vorder- und Rückseite. Dito in der Sub-Tabelle KURS, da stehen alle jemals ermittelten Kurswerte mit Datum drin, in der entsprechenden "Zwischentabelle" die Verknüpfungen. Das erlaubt dann die Darstellung von Kursverläufen einzelner Währungen über einen gewissen Zeitraum hinweg. Wäre der Kurs einer Währung unveränderlich, bräuchte ich das nicht und würde einfach in der Währungstabelle die Spalte KURS hinzufügen.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#20

AW: Bild aus Access DB auslesen und verarbeiten - *.png

  Alt 12. Dez 2014, 09:57
Ich glaube wir reden hier stark aneinander vorbei.

Folgendes Dataset per Abfrage
idperson_id
11
21
32
Und die Person_Tabelle
idnamebild
1Peter(BLOB)
2Walter(BLOB)
Mit dem Nachschlagefeld kann ich die erste Abfrage erweitern, dass ich das Feld "name" auch noch dort sehe
idperson_idperson_name
11Peter
21Peter
32Walter
Dabei wird das Feld "person_id" mit dem Feld "id" aus Person_Tabelle verbunden und als Feld, was den referenzierten Wert liefert eben "name" aus Person_Tabelle.

Funktioniert wunderbar.

Aber eben nicht, wenn das Feld was dort reinverknüpft werden soll ein BLOB Feld ist. Das Feld "name" ist (s.o.) kein Problem, ist ein VARCHAR.

Das hier geht also nicht
idperson_idperson_nameperson_bild
11Peter(BLOB)
21Peter(BLOB)
32Walter(BLOB)
Das wollte der TE aber haben

Falls es immer noch nicht klar sein sollte was gesucht ist, dann diesen Artikel lesen
http://docwiki.embarcadero.com/RADSt...der_definieren
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (12. Dez 2014 um 10:03 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:06 Uhr.
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