AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken TSQLConnection / Oracle / NSL_CHARACTERSET ändern
Thema durchsuchen
Ansicht
Themen-Optionen

TSQLConnection / Oracle / NSL_CHARACTERSET ändern

Ein Thema von tofse · begonnen am 6. Dez 2012 · letzter Beitrag vom 8. Dez 2012
Antwort Antwort
Seite 2 von 2     12   
tofse

Registriert seit: 6. Jun 2011
Ort: Saarlouis
131 Beiträge
 
Delphi XE Professional
 
#11

AW: TSQLConnection / Oracle / NSL_CHARACTERSET ändern

  Alt 7. Dez 2012, 09:08
ich schaue mir das mal an.
Irgendwie hatte ich es mir so vorgestellt
Zitat:
TZConnection.ClientCodePage := 'WE8MSWIN1252';
TZConnection.UserName etc.....
Danke
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: TSQLConnection / Oracle / NSL_CHARACTERSET ändern

  Alt 8. Dez 2012, 09:33
Hi tofse

Du arbeitest mit TSQLConnection, also mit DBExpress? Seit mW. D2010 gibt es dazu ein komplett überarbeitetes DBX-Framework. Und dieses enthält Routinen, um empfangene Strings in den Zeichensatz der Anwendung umzuwandeln.

Ich selbst arbeite zwar mit MySQL, greife aber auch mit den DBExpress-Komponenten auf den Server zu. Ein Stringgrid befülle ich zB. wie folgt:

Delphi-Quellcode:
    while not DelborDataMod.SQLDataSetXE.Eof do
    begin
      StrGridKathegory.Cells[0, i] := IntToStr(DelborDataMod.SQLDataSetXE.FieldByName('Kath_ID').AsInteger);
      StrGridKathegory.Cells[1, i] := UTF8ToUnicodeString(DelborDataMod.SQLDataSetXE.FieldByName('Kategorie').AsString);
      DelborDataMod.SQLDataSetXE.Next;
      inc(i);
    end;
Damit hast du zwar nicht den Zeichensatz des Servers geändert, sondern nur den der Anwendung. Ausserdem müsstest du dir noch was einfallen lassen, falls du mit Datensensitiven Komponenten arbeitest - ohne dein Zutun zeigen die sonst den Zeichensatz so an, wie er vom Server kommt.
Natürlich hat der Server auch eine sessionspezifische Variable CLIENTDATASET - eine Oracel-DB wohl ebenso wie MySQL.

Gruss
Delbor

PS:

Zitat:
Wie kann ich NLS_CHARACTERSET in Delphi (TSQLConnection) setzen????
Hmm... Solange das der Charakterset deiner Verbindung ist, kannst du das sicher tun - in MySQL gibt's für sowas das SQL-Statement 'SET @@session.character_set_client = ''wasauchimmer'''.
Oracel müsste wohl auch sowas haben.
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor ( 8. Dez 2012 um 09:45 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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:29 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