Thema: RTF in MySQL

Einzelnen Beitrag anzeigen

Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
804 Beiträge
 
Delphi 10.4 Sydney
 
#1

RTF in MySQL

  Alt 27. Mär 2012, 10:52
Datenbank: MySQL • Version: 5 • Zugriff über: ohne Komponenten
Hallo Zusammen,

ich stolpere mal wieder über die fehlenden Basics...

Ich möchte gerne den Inhalt eined RichEdits in eine MySQL DB speichern. Ich meine damit, dass ich den Inhalt und die Formatierung abspeichern und wieder herausholen möchte.

Beispiel:
Ich bin ein Test

Wenn es so abgespeichert wurde, soll es nach dem Laden der Daten auch so wieder angezeigt werden.

Ich habe dazu folgende Funktion gefunden, um nicht nur den Text (Ich bin ein Test), sondern auch die Formatierungsinformationen in eine string-Variable zu bekommen.

Delphi-Quellcode:
function RichText(re: TRichEdit): String;
var ss: TStringStream;
begin
  ss := TStringStream.Create ('');
  try
    re.Lines.SaveToStream(ss);
    Result := ss.DataString;
  finally
    ss.Free;
  end;
end;
Jetzt geht es aber um den Syntax, wie ich die Daten in dem MySQL Server speichern kann.
Ich habe es mit dem nachstehenden versucht (ein ganz normales insert), aber da bekomme ich Fehler...

So sieht das RichEdit aus:
Das ist ein Test
  • bei dem ich RTF
  • MySQL
  • Delphi
zusammenbringen möchte

Delphi-Quellcode:
insert into plants (Name)
values({\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl{\f0\fnil\fcharset0 Tahoma;}{\f1\fnil\fcharset2 Symbol;}}'#$D#$A'\viewkind4\uc1\pard\ul\b\i\f0\fs16 Das ist ein Test\par'#$D#$A'\pard{\pntext\f1\''B7\tab}{\*\pn\pnlvlblt\pnf1\pnindent0{\pntxtb\''B7}}\fi-200\li200\ulnone\b0 bei dem ich RTF\par'#$D#$A'{\pntext\f1\''B7\tab}MySQL\par'#$D#$A'{\pntext\f1\''B7\tab}Delphi \i0\par'#$D#$A'\pard zusammenbringen m\''f6chte\par'#$D#$A'\par'#$D#$A'}'#$D#$A#0')
Der Fehler, den der MySQL-Server ausspuckt: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl {\f0\fnil\fcharset0 Tahoma' at line 2

Ich hoffe, dass ich mein Problem nachvollziehbar beschrieben habe, sonst bitte ich um einen Nachbesserungshinweis...

Kann mir jemand von Euch helfen, habe damit keine Erfahrungen?

Vielen Dank

Ykcim
Patrick
  Mit Zitat antworten Zitat