AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Umlaute mit AnyDac und Oracle
Thema durchsuchen
Ansicht
Themen-Optionen

Umlaute mit AnyDac und Oracle

Ein Thema von egentur · begonnen am 15. Mär 2017 · letzter Beitrag vom 17. Mär 2017
Antwort Antwort
egentur

Registriert seit: 27. Sep 2006
Ort: Freising
60 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Umlaute mit AnyDac und Oracle

  Alt 15. Mär 2017, 16:50
Datenbank: Oracle • Version: 11 XE • Zugriff über: AnyDAC 6.0.9
Hallo zusammen
kleines Problem unter Win7

Entwicklungsumgebung RAS Studio 2007 mit AnyDAC 6.0.9
zugriff auf Oracle 11 XE

Einziges Problem
Wenn ich die 32-Bit Version von Oracle nutzem ist alles in Ordnung.
Installieren ich aber die 64-Bit Version von Oracle werden beim Zugriff über AnyDAC
die Umlaute und Sobderzeichen nicht korrekt übertragen.

ü,ä,ö -> ?,?,?

Die Delphi Version und die AnyDAC Version kann ich Moment nicht ändern.
Gibt es evtl. in den Verbindungs Einstellungen etwas wie Sprachen bzw. Zeichensatz
Dank für jeden Hinweis
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Umlaute mit AnyDac und Oracle

  Alt 15. Mär 2017, 17:04
Sieht sehr nach falscher Codepage aus.
Markus Kinzler
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#3

AW: Umlaute mit AnyDac und Oracle

  Alt 15. Mär 2017, 17:21
..wenn ich die 32bit Version von Oracle nutze..
Sprichst du dabei vom Oracle Client oder vom DB Server?

also erstmal grob Thema 32/64 bit:
Database
Oracle Fat Client
ODAC
Instant Client

gibt es in 32 und 64 bit
Ich weiß jetzt nicht, ob deine Studioversion schon 64er Code bauen kann, aber dann überhaupt erst lohnt eine Betrachtung von 64bit Clients.

Ich vermute, Du baust 32 bit Delphiclients, also wechselst Du tatsächlich die Datenbank zwischen 32 und 64?

Wie auch immer, der Oracle Client kann sämtliche localization settings im client setzen. Das geschieht am besten und teilweise automatisch schon bei der Installation.
Wenn nicht, kann man es auch zur Laufzeit einstellen.

Wenn Du tatsächlich mit 32 und 64 bit DB jonglierst, mach dich mal mit dem Thema Varchar, NVarchar vertraut und prüfe, ob Dein Datenmodell (die Textspalten) das berücksichtigt.
Gruß, Jo
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: Umlaute mit AnyDac und Oracle

  Alt 15. Mär 2017, 18:04
Also Fragezeichen bekomme ich immer, wenn die eine Seite Unicode nutzt und die andere nicht.

Egal, welches Delphi und welche Datenbank ...

Und klar, wie oben schon angedeutet: Unterschiedliche Zeichensätze.
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
555 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Umlaute mit AnyDac und Oracle

  Alt 16. Mär 2017, 09:59
NLS_LANG ist vermutlich nicht gesetzt.

Sieht der Instant Client die Registry settings? Vermute mal der Instant Client ist die 64bit Version.

TFDConnection.Params.CharacterSet - Vermutlich ist dort cs_NLS_LANG eingestellt und die Settings werden so nicht gezogen.

Du kannst die Parameter auslesen, diese sind eine Stringliste und auch setzen.

Mal geraten.


Hallo zusammen
kleines Problem unter Win7

Entwicklungsumgebung RAS Studio 2007 mit AnyDAC 6.0.9
zugriff auf Oracle 11 XE

Einziges Problem
Wenn ich die 32-Bit Version von Oracle nutzem ist alles in Ordnung.
Installieren ich aber die 64-Bit Version von Oracle werden beim Zugriff über AnyDAC
die Umlaute und Sobderzeichen nicht korrekt übertragen.

ü,ä,ö -> ?,?,?

Die Delphi Version und die AnyDAC Version kann ich Moment nicht ändern.
Gibt es evtl. in den Verbindungs Einstellungen etwas wie Sprachen bzw. Zeichensatz
Dank für jeden Hinweis
  Mit Zitat antworten Zitat
egentur

Registriert seit: 27. Sep 2006
Ort: Freising
60 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#6

AW: Umlaute mit AnyDac und Oracle

  Alt 17. Mär 2017, 10:49
Hallo MichaelT

In der Tat, es war die Einstellung bei TADConnection.Params
dort fehlte der Eintrag für CharacterSet

Vielen Dank
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
555 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Umlaute mit AnyDac und Oracle

  Alt 17. Mär 2017, 11:31
Das wäre jetzt mal eine Notlösung. Die Frage bleibt warum der Instantclient die NLS_LANG nicht zieht.

Du kannst Umgebungsvariablen programmatisch setzen über den DriverLink und so gut wie dasselbe erreichen.
Propetry NLSLang. Du kannst am OraDriverLink bspw. auch die Homes auslesen oder TNSAdmin setzen usw...

Hallo MichaelT

In der Tat, es war die Einstellung bei TADConnection.Params
dort fehlte der Eintrag für CharacterSet

Vielen Dank
  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 00:39 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