Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   UniDAC + ADS 10 - Probleme mit unicode (https://www.delphipraxis.net/159155-unidac-ads-10-probleme-mit-unicode.html)

bwolf 16. Mär 2011 13:16

Datenbank: ADS • Version: 10 • Zugriff über: Unidac

UniDAC + ADS 10 - Probleme mit unicode
 
Hi Leute,

habe ein seltsames Problem:

Ich nutze den ADS 10 und die uniDAC Komponenten von DevArt.
Nun habe ich folgende Query:

Code:
SELECT nachricht.id, prio.Bezeichnung AS Prioritaet
FROM IC_Nachrichten
LEFT JOIN prio ON prio.ID = nachticht.ID_prio
WHERE id = 2
Das Ergebiss ist die ID der Nachricht und die Bezeichnung der Priorität.
Die Bezeichnung der Priorität ist bei dieser Abfrage allerdings "null" da die Tabelle keine Einträge enthält:

Das seltmame ist, das wenn ich mir die Bezeichnung der Priorität über eine Anwendung ausgeben lasse, erhalte ich statt eines leeren Strings irgendwelche seltsamen Zeichen.

Sowohl die Textfelder der Tabelle sind als Unicode definiert als auch die TUniConnection.


Ich habe leider keinen Plan was die Ursache für dieses abstruse verhalten sein könnte und hoffe jemand kann mir einen Hinweis geben.
Vielen Dank!

Bernhard Geyer 16. Mär 2011 13:23

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Da ADS noch nicht lange Unicode kann und Unidac in den Release-Infos (http://www.devart.com/unidac/history.html) keinen Hinweis darauf liefert diese neue Version zu unterstützen würde ich sagen: Unidac ist nicht ADS-V10-Unicode-Kompatible.

ChrisE 16. Mär 2011 13:38

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Hallo bwolf,

hast du mal im DevArt-Forum nach gefragt. Die sind echt gut - nicht so schnell wie hier - aber die helfen eigentlich immer gut weiter.

Gruß, Chris

bwolf 16. Mär 2011 14:00

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Hi,


danke für eure Antworten!

@Bernhard: Wahrscheinlich hast du recht. Der unicode support im ADS selbst scheint mir auch noch nicht so ganz ausgegoren zu sein...

@Chris: Jo habe ich, ich warte auf Antwort und dachte ich frag hier parallel nach ;)

joachimd 16. Mär 2011 14:19

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Zitat:

Zitat von bwolf (Beitrag 1088997)
Der unicode support im ADS selbst scheint mir auch noch nicht so ganz ausgegoren zu sein...

Auf welche Tatsache stützt Du diese Behauptung?

bwolf 16. Mär 2011 15:49

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Zitat:

Zitat von joachimd (Beitrag 1089008)
Zitat:

Zitat von bwolf (Beitrag 1088997)
Der unicode support im ADS selbst scheint mir auch noch nicht so ganz ausgegoren zu sein...

Auf welche Tatsache stützt Du diese Behauptung?

Wenn man im Data Architect (10.03) bei einer bestehenden Tabelle ein Feld von Char auf nVarChar geändert hat, konnte man keine Datensätze mehr einfügen. (BrowseTable: Error 5073: The given record length was invalid.)
Das wurde wohl im 10.10er Architext gefixt.

Wenn man im 10.10er ein Feld von Typ nVarChar(100) anlegt und diese erneut öffnet, wird das Feld mit einer länge von 101 angezeigt.
Auch beim generieren des SQL-Scripts wird das Feld mit 101 Zeichen angegeben.

Vieleicht sind das aber auch noch kleine schwächen des Architects und es hat nicht direkt was mit der Unicode unterstützung zu tun?

joachimd 16. Mär 2011 15:57

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Zitat:

Zitat von bwolf (Beitrag 1089036)
Vieleicht sind das aber auch noch kleine schwächen des Architects und es hat nicht direkt was mit der Unicode unterstützung zu tun?

richtig ;)

bwolf 16. Mär 2011 16:51

AW: UniDAC + ADS 10 - Probleme mit unicode
 
[edit]
hmmm, ich glaube das Problem ist gelöst:
Ich habe den ADS Server und den ODBC Treiber von 10.03 auf 10.10 geupdated, und das Problem scheint behoben.
Irgendwas scheint da noch faul gewesen zu sein, vieleicht aus seitens de Unidac Komponenten.
Wie auch immer, bin froh das es jetzt klappt.
Danke für eure Hilfe!

Bernhard Geyer 16. Mär 2011 17:01

AW: UniDAC + ADS 10 - Probleme mit unicode
 
Zitat:

Zitat von bwolf (Beitrag 1089059)
Ich habe den ADS Server und den ODBC Treiber von 10.03 auf 10.10 geupdated, und das Problem scheint behoben.
Irgendwas scheint da noch faul gewesen zu sein, vieleicht aus seitens de Unidac Komponenten.

Wenn du über ODBC zugreifst würde ich sagen das hier der ODBC-Treiber etwas "uneindeutige Infos" bezüglich Unicode geliefert hat. BDE (man habe sie Seelig) hat (hatte?) ja gleiche Probleme mit Stringfeldern bei Access.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 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