Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Eintrag in DB Kyrillisch nur ?????? (https://www.delphipraxis.net/182638-eintrag-db-kyrillisch-nur.html)

Pet04 7. Nov 2014 06:57

AW: Eintrag in DB Kyrillisch nur ??????
 
Wie ist das Array definiert?

station_array: array [0 .. 210] of string;

Wie ist ds encoding der Datenbank, des Feldes und der Connection?

Wo sehe ich die Einstellungen fürs Encoding der DB ?
Die Tabellenspalte ist als nvarchar() definiert.

Meine DB Connection:
Server=Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Datenbankname;Data Source=.\

"welches korrekt in kyrillisch übersetzt wird" und das ist auch ganz sicher so?

ja

Über insert... wird es richtig eingetragen, daher gehe ich davon aus, dass die Einstellungen richtig ist.

Bernhard Geyer 7. Nov 2014 07:18

AW: Eintrag in DB Kyrillisch nur ??????
 
Sind Persistente Felder definiert?

Dejan Vu 7. Nov 2014 07:30

AW: Eintrag in DB Kyrillisch nur ??????
 
Vermutlich schafft der Treiber es nicht, ein 'N' vor das Stringliteral bei der Parametrierung zu setzen. Ich würde mir mal im Profiler anschauen, welcher SQL-Befehl genau zum Server geschickt wird. Ich war neulich so blöd, und hab das direkt im SSMS geschafft, also etwas kyrillisches in ????? zu verwandeln, nämlich so:
Code:
declare @foo nvarchar(20)
set @foo = '<etwas kyrillisches>'
select @foo
Ergebnis: '??????'
Code:
declare @foo nvarchar(20)
set @foo = N'<etwas kyrillisches>'
select @foo
Ergebnis: '<etwas kyrillisches>'

Bei falsches Codepages würde ich annehmen, das einfach ein anderer Buchstabensalat rauskommt. Bei reinen '????' auf Datenverlust im SQL-Skript.

Bernhard Geyer 7. Nov 2014 07:46

AW: Eintrag in DB Kyrillisch nur ??????
 
Der Treiber hat hier mit Sicherheit kein Problem (Verwende ADO+D6 seit Jahren und habe keine Probleme mit nvarchar-Feldern).
Wenn dann hat hier die ADOExpress/dbGo-Implemenetierung der verwendeten Delphi-Version einen Fehler (Verwende bei uns eben kein dbGo).

Probier mal statt .AsString .AsWideString aus.

Dejan Vu 7. Nov 2014 10:06

AW: Eintrag in DB Kyrillisch nur ??????
 
'Treiber' war wirklich falsch formuliert...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:41 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz