AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Bild in Datenbank (MSSQL) speichern (muss leider sein)
Thema durchsuchen
Ansicht
Themen-Optionen

Bild in Datenbank (MSSQL) speichern (muss leider sein)

Ein Thema von DaWi · begonnen am 10. Dez 2003 · letzter Beitrag vom 12. Dez 2003
Antwort Antwort
DaWi

Registriert seit: 22. Nov 2003
9 Beiträge
 
#1

Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 10. Dez 2003, 21:14
Hallo alle miteinander...

zuerst: frohe Weihnachten und ganz viel Schnee bitte !!!!

Aber jetzt zum Problem:

ich würde gerne ein Logo (es handelt sich um lediglich ein einziges JPG) in einer Datenbank speichern (MSSQL). Leider funktioniert das Speichern des JPEGS nicht wenn ich es per FileStream speichern möchte. Wenn ich die schon vorhandenen Beispiele im Forum ausprobiere, funktioniert das bei mir ebenfalls nicht...
Es macht den Anschein, daß es wohl an mir liegt. Aber ich weiß nicht an was....

Hat nicht jemand einen Beispielcode Zuhause rumliegen, den er hier kurz posten könnte ???

Mein Test sah folgendermaßen aus:

ich erzeugte ein TFileStream und einen TStream, welche dann durch CopyFrom den Inhalt weitergegeben haben. (Von FileStream auf Stream). In der DB wird aber in dem zugehörigen Blob-Feld nur 3 bis 4 Zeichen eingefügt... keine Ahnung warum.... Wäre ganz toll, wenn sich jemand erbarmen könnte... such schon ne Weile und bin wohl zu beschränkt die Beispiele auszuführen...

Gruß

Dawi
  Mit Zitat antworten Zitat
Benutzerbild von WooDWorkeR
WooDWorkeR

Registriert seit: 20. Feb 2003
Ort: Magdeburg
76 Beiträge
 
Delphi 7 Personal
 
#2

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 10. Dez 2003, 23:03
also

warum fuer 1. - in worten EIN - JPG File eine Tabelle erstellen?
also ne kannste das nciht irgedn wie in das Programm File einbinden?
oder warum MUSS diese einzige Datei in eine DB rein?
DontSwapThis:
  Mit Zitat antworten Zitat
DaWi

Registriert seit: 22. Nov 2003
9 Beiträge
 
#3

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 11. Dez 2003, 06:18
Es ist so, daß dieses Bild auf alle Reports des Programmes drauf soll und trotzdem noch vom Benutzer selbst angegeben und auch selbst erstellt werden soll.

Und um nicht gefahr zu laufen, daß dieses Bild dann in irgendeinem wildfremden Pfad liegt und auch durch eine Datenbanksicherung wirklich alles gesichert wird, würde bzw. sollte ich dieses bild dann auch in der DB speichern...

Gruß

DaWi
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 11. Dez 2003, 07:25
Falls das Bild größer ist und die BDE verwendet wird, so muß für den BDE/ODBC-Eintrag der Eintrag "BLOB SIZE" erhöht werden (AFAIK ist der Default-Wert 32, welcher maximal 32 kByte große Dateien fehlerfrei übertragen kann).
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#5

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 11. Dez 2003, 07:44
Prinzip:
Delphi-Quellcode:
procedure SaveBitmapToDb(DasBild : TBitmap, DieQuery : TQuery);
var UnserStream : TMemoryStream;
begin
  // TQuery ausserhalb dieser Procedure vorbereiten
  // im QueryText muß enthalten sein: "BildFeldName = :Bild"
  if not DasBild.Empty then begin
    DieQuery.Prepare;
    UnserStream := TMemoryStream.Create;
    try
      DasBild.SaveToStream(UnserStream);
      DieQuery.ParamByName('Bild').LoadFromStream(UnserStream,ftBlob);
    finally
      UnserStream.Free;
    end;
    DieQuery.ExecSQL;
  end;
end;
Mußt Du Dir ein wenig anpassen...
Gruß
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
DaWi

Registriert seit: 22. Nov 2003
9 Beiträge
 
#6

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 11. Dez 2003, 09:44
Ich denke das sieht gut aus...


Ich probiers aus und schreibe dann auch das Ergebnis hier rein...

Aber schon mal eines: Ich finde dieses Forum hier hat einfach die Nase ganz ganz weit vorn...

ich war schon in vielen beim suchen und auch als User... aber hier fühl ich mich wohl... so schnell werd ich hier nicht mehr gehen *GRINS*



Gruß

DaWi
  Mit Zitat antworten Zitat
DaWi

Registriert seit: 22. Nov 2003
9 Beiträge
 
#7

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 12. Dez 2003, 06:28


Leider funktioniert das ganze bei SQL2000 - DB's über BDE nicht...

Es kommt der Fehler, daß das Prepare nicht ausgeführt werden kann... und daran scheitert dann das ganze schon...

Gibts da auch einen Weg das ganze über ein TTable zu erstellen... hab schon nachgeschaut, da gibts keine ReadFromStream - Methode... leider


Hat sonst noch jemand eine Idee ???

Gruß

DaWi
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#8

Re: Bild in Datenbank (MSSQL) speichern (muss leider sein)

  Alt 12. Dez 2003, 06:30
Das muß gehen - zeig mal Deinen Code her...
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:43 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