SynEdit Textsize

Rund um die LCL und andere Komponenten
Antworten
baba
Beiträge: 265
Registriert: Mi 4. Apr 2007, 17:47

SynEdit Textsize

Beitrag von baba »

Moin, moin,

ich bekomme eine Fehlermeldung, wenn ich versuche einen 24 KB großen Text in ein SysEdnit einzulesen. Wie kann das sein?

Gruß
Baba.

baba
Beiträge: 265
Registriert: Mi 4. Apr 2007, 17:47

Re: SynEdit Textsize

Beitrag von baba »

von 06.2005 - so etwas frustet!!! :o

Code: Alles auswählen

Stevie,
i have firebird database with field size VARCHAR(32000) in it... if i read from this field with zeosdbo my progy crash... if i change size of this field to size VARCHAR(254), it's all ok... i'm compiling with fpc 2.0.1 and latest lazarus from cvs... zeosdbo is from cvs (latest)...

Code: Alles auswählen

Hi Barko,
this is a limitation of zeos (and a known bug, see the knownbug-file). Don't know when it will be fixed. :-/
Zeos kann also keine größeren Texte aus einer SQL-Datenbank abholen.

Baba.
Zuletzt geändert von baba am Mi 23. Dez 2009, 05:14, insgesamt 3-mal geändert.

baba
Beiträge: 265
Registriert: Mi 4. Apr 2007, 17:47

Re: SynEdit Textsize

Beitrag von baba »

ich habe eine Kopie des Programm´s auf die Lazarus-Eigene "PQConnection" Verbindung umgeschrieben - und siehe da, es läuft Fehlerfrei. Ein reines Textdokument, z.B. Quelltext, aus einem VARCHAR(32768) läßt sich prima in ein SynEdit einlesen.

Ich habe mal im ZeosForum eine Message abgesetzt. Vielleicht weiß da jemand wie dieser Zeosbug zu umgehen ist. Bereits in den 80er Jahren war es ja schon möglich mit Clipper/DBase reine Charfelder mit einer Länge von 32KB anzulegen und ich meine jetzt keine Memofelder.

Baba.

Wollte ich eine Quelltextverwaltung schreiben, wären 32 KB sogar ein Witz. Units können ja schnell mal 100 KB und mehr erreichen.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6833
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: SynEdit Textsize

Beitrag von af0815 »

Benötigst du den Quelltext unbedingt in einem Varcharfeld oder ist das Designtechnisch ein 'must have' ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

baba
Beiträge: 265
Registriert: Mi 4. Apr 2007, 17:47

Re: SynEdit Textsize

Beitrag von baba »

af0815 hat geschrieben:Benötigst du den Quelltext unbedingt in einem Varcharfeld oder ist das Designtechnisch ein 'must have' ?

das mit dem Quelltext war nur ein Beispiel. Er geht um lange Notizen in einem XML-Ähnlichen Format, die vom Anwender selbt zu einem Datensatz definiert werden können.

Für das Problem habe ich nun 2 Lösungen gefunden:

1. Benutzung der Lazarus-Eigenen SQL-Komponenten. (Der Fehler tritt hier nicht auf)
2. Benutzung eines TEXT statt eines VARCHAR(32768) Feldes. Damit funktionieren die Zeo-Komponenten.

Da beide Feldtypen dynamisch verwaltet werden, ist der einige Unterschied, dass TEXT-Felder, DB-Abhängig, erst bei 2GB begrenzt werden. Ich muß also vom Programm die maximale Feldlänge vor dem Speichern prüfen. Es wäre sonst so, als ließe ich einige Tausend User ohne Quota auf einen Server los.

Baba.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6833
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: SynEdit Textsize

Beitrag von af0815 »

baba hat geschrieben: das mit dem Quelltext war nur ein Beispiel. Er geht um lange Notizen in einem XML-Ähnlichen Format, die vom Anwender selbt zu einem Datensatz definiert werden können.
Auch ein Weg ist: Zuerst komprimieren und dann als Blob. Kommt aber darauf an, ob du in den Text schnell hineinsehen musst oder ob du Platz sparen willst.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten