Zum Inhalt springen

MS-SQL 2005 - Datenbank: Zeichenkodierung konvertieren?


Empfohlene Beiträge

Geschrieben

Hallo,

vielleicht kann mir hier jemand helfen....

Ich habe ein PHP-Programm von ISO-8859-1 auf UTF-8 umgestellt, also Zeichensätze der Dateien und im HTML-Header geändert. Nun hab ich ein Problem mit den Daten, welche bisher mit dem Programm in die DB eingetragen wurden.

Dort werden nun nämlich die 'Rechtecke mit Fragezeichen' (�) anstatt der gewünschten Sonderzeichen ausgegeben.

Gibt es eine Einstellung für die MS-SQL-Datenbanken, in welcher Kodierung die Daten rein geschrieben und ausgelesen werden? Und wie kann ich die vorhandenen Daten konvertieren?

Würde mich freuen, wenn mir wer n Tipp geben kann.

Geschrieben

Hi ennor,

dein SQL Server wandelt implizit in den Datentyp, den du beim Anlegen der entsprechenden Spalte deiner Tabelle angegeben hast.

Bei varchar(x) entscheidet die eingestellte Collation ueber die verwendete Codepage.

Hast du ein nvarchar(x) verwendet, so enthaelt die Spalte ne UCS-2 Codierung.

Entweder wandelst du nun beim Schreiben/Lesen aus/in die Datenbank nach UCS-2 und verwendest nvarchar(x) (natuerlich nur insofern dir der UCS-2 Zeichenvorrat ausreicht), oder du verwendest den Datentyp varbinary(x).

Bei varbinary(x) kannst du problemlos deine UTF-8 codierten Strings speichern. Eventueller Nachteil ist, dass du mit einer solchen Spalte dann datenbankintern laengst nicht mehr alles machen kannst, was du vielleicht sonst vielleicht auf einer Charakter Spalte tun wuerdest.

Goos

Geschrieben

Danke für die Antwort Goos,

aber mein Problem sind ja die gespeicherten Daten. Die werden mit falschen (oder besser: anderen) Umlauten ausgelesen bzw. angezeigt...

Gibt es da eine Möglichkeit, die zu konvertieren?

Zur Zeit befürchte ich, das ich mit einem Skript alle Datensätze laden, mit iconv (o.ä.) umwandeln und wieder speichern müsste.

Das würde mit nem SQL-Skript besser gehen (TRANSLATE ?)

Grüße

Geschrieben

Hi ennor,

Eine Umwandlung nach UTF-8 gibts auf jden Fall nicht. Ansonsten haengts davon ab, unter welchem Datentyp du momentan gespeichert hast und welchen Datentyp du in Zukunft verwenden willst.

Goos

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...