TNT/TMS Unicode, Delphi 2007 und Interbase 2007

31/05/2008 - 17:17 von Michael Justin | Report spam
Hallo Newsgroup

Gibt es im Internet eventuell ein Beispielprojekt oder eine Schritt-für
Schritt-Anleitung für die Verwendung der datengebundenen TNT (bzw. TMS)
Unicode Komponenten, die auch mit Delphi 2007 und InterBase 2007
funktioniert?

In der (registrierten) Version der TMS Unicode Komponenten ist kein
Beispiel enthalten, und ich habe bereits beim Zugriff aus Delphi 2007
auf Interbase 2007 mit dbExpress ein Problem mit dem WideString Feldtyp
- siehe mein Newsgroupposting vom 29. April unten.

Erfolg hatte ich bisher nur bei der Verwendung eines kalkulierten Feldes
vom WideString Typ in einem ClientDataset. Wenn diesem ein WideString
Wert z.B. aus einem TntEdit zugewiesen wird, funktioniert die Unicode
Darstellung und auch z.B. die List & Label Reportausgabe.

Mir fehlt nur noch der letzte Baustein, die Verbindung zwischen
dbExpress und Interbase Feldern

Viele Grüße

Michael Justin



borland.public.delphi.database.dbexpress


Delphi 2007 and InterBase 2007, UTF8 Encoding: 'expecting WideString,
found String'

Dear all

In the employee.gdb example database, I added an UTF8 encoded field to
the customer table.

In Delphi 2007 (with December update), opening the a TSQLQuery - which
selects only this field - works fine at desing time and at runtime, as
long as I do not use persistent fields. (The TSQLConnection uses the
UTF8 ServerCharSet.)

But if I use the field editor to add a persistent field component to the
TSQLQuery, an error (EDatabaseError) occurs at runtime when opening the
query, saying 'Expected: WideString, found: String'.
This error happens at runtime only, opening the query at design time is
possibe without problems.

I guess that at runtime something works different with the connection. I
suspected a component setting in TSQLConnection, like
LoadParamsOnConnect (but this is set to False).

Is it a problem with InterBase or do I make a mistake on the Delphi side?

Michael Justin
 

Lesen sie die antworten

#1 Arno Garrels
31/05/2008 - 19:07 | Warnen spam
Michael Justin wrote:

In der (registrierten) Version der TMS Unicode Komponenten ist kein
Beispiel enthalten, und ich habe bereits beim Zugriff aus Delphi 2007
auf Interbase 2007 mit dbExpress ein Problem mit dem WideString
Feldtyp - siehe mein Newsgroupposting vom 29. April unten.



Utf8String ist kein WideString sondern ein AnsiString.
Die TNT-Komponenten besitzen eigene TField-Typen, z.B. TTntStringField
und TTntWideStringField, die im Feldeditor auch wàhlbar sind.
Versuch mal ein _neues TNT-Feld mit dem vorhandenen Feldnamen zu erstellen,
dann sollte das schon irgendwie klappen, habe selbst aber noch nie mit den
TNT-Datenbank-Steuerelementen gearbeitet.

Arno Garrels

Ähnliche fragen