AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi delphi 7 und tschechische sonderzeichen
Thema durchsuchen
Ansicht
Themen-Optionen

delphi 7 und tschechische sonderzeichen

Ein Thema von etom291272 · begonnen am 18. Dez 2008 · letzter Beitrag vom 18. Dez 2008
Antwort Antwort
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#1

delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 14:43
Tag zusammen...

Folgende Konstellation:
Anwendung in Delphi7
Datenbank Microsoft Sql Server (msde)

Die Anwendung läuft auf einem tschechischen rechner. in einigen feldern werden inhalte mit sonderzeichen eingegeben (z.b das C mit dem Haken oben - genannt hacek)
Die Tschechischen Sonderzeichen können auch in den Masken richtig eingegeben werden und werden auch korrekt angezeigt.
Ich muß aber für einen Ausdruck einen bestimmten Datensatz in eine Tabelle in die Datenbank im Sql Server schreiben.
Dazu erzeuge ich ein insert into statement das ich über die ado conn direkt absetze.
Also über mehrere TBetteradodataset die darunter direkte Felder hat hole ich mir den Wert mit value und verwende dies dann für das sql statement.
In der Datenbank wird aber dieser Datensatz ohne den Sonderzeichen angelegt und so erfolgt dann auch der ausdruck.
Also wird zum Beispiel das C mit dem Haken oben als C ohne den Haken gespeichert und nachher auch so gedruckt.

Ich vermute das beim erhalten des Datenbankfeldes über das TBetteradosetfeld die Information des Sonderzeichens verloren geht, oder passiert das beim Absetzen des Sql Statements was über die ADO Connection läuft.

wenn ich das richtig verstanden haben, kann der Datentyp String (= AnsiString) mit Sonderzeichen und internationalen Sonderzeichen bzw. Unicode nicht umgehen???

bin für jeden Ratschlag oder Tip dankbar.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 14:47
Hast du varchar oder nvarchar-Felder?
Verwendest du prepared Statements?
Auf welcher Default-Sprache läuft der Server?
Auf welcher Collation läuft deine Datenbank?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#3

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 14:50
nvarchar
nein keine parameter statements - ganz normale insert into als widestring zusammengesetzt und über das ado connection execute abgesetzt.
default sprache denke ich ist tschechisch - da er auf diesem system installiert wurde (wie kann man das ermitteln)
collation der datenbank - (wenn es nur um die sortierung geht können wir das ignorieren)

und schonmal danke
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 14:56
Zitat von etom291272:
nein keine parameter statements - ganz normale insert into als widestring zusammengesetzt und über das ado connection execute abgesetzt.
Dann änder das mal schnell! Könnte u.U. das Problem verursachen.
Aber ich binn ja nicht. Ergänze mal Testhalber vor jedem Text ein N (INSERT into .. VALUES(N'abcdef', ...).

Hast du schon mal im SQL Server Profiler nachgeschaut was ankommt?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#5

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 15:13
Aber ich binn ja nicht. ???

sql profiler - bitte um erklärung? hab ich noch nie benutzt
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 15:18
Zitat von etom291272:
sql profiler - bitte um erklärung? hab ich noch nie benutzt
SQL Management Studio starten + Einlogen.
Aufruf über "Extras/SQL Server Profiler" starten und dann erstmal etwas in der OH unter "SQL Server Profiler" einlesen.

Mit dem Profiler siehst du was SQL-Technisch bei der DB ankommt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#7

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 15:20
hab ich das richtig verstanden.

über ein TADOCommand Objekt die Anweisung mit Parametern zusammenbauen
die Paramter befüllen wie immer

und dann absetzen gegen die datenbank mit execute?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 15:40
Zitat von etom291272:
über ein TADOCommand Objekt die Anweisung mit Parametern zusammenbauen
die Paramter befüllen wie immer

und dann absetzen gegen die datenbank mit execute?
Ja. Parameter verursachen weniger Probleme (und vor allem keine Sicherheitslücken ALA SQL Injection) und bei verwendung von prepared Statements sind sie auch schneller.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#9

Re: delphi 7 und tschechische sonderzeichen

  Alt 18. Dez 2008, 17:09
ich danke dir vielmals das mit den parametern scheint die lösung gewesen zu sein
  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 04:30 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