Announcement

Collapse
No announcement yet.

SQL Server -> Query Analyzer: Chinesische Schriftzeichen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Server -> Query Analyzer: Chinesische Schriftzeichen

    Hallo,

    ich habe SQL-Skripts mit Insert-Statements über die chinesische Texte in die Datenbank eingetragen werden. Das Problem dabei ist, dass im Query Analyzer die Schriftzeichen korrekt angezeigt werden, aber in der Datenbank (SQL Server 2000) als Fragezeichen (pro chin. Zeichen dargestellt werden).

    Werden die Schriftzeichen über den Enterprise Manager eingegeben, funktionert es.
    Allerdings zwingen mich die Gegebenheiten dazu, die Texte über Skripts einzutragen.

    Kann mir jemand helfen ???

    Viele Grüße
    Hans-Peter

  • #2
    Man kann nicht sagen, dass Zeichen in der DB als Fragezeichen dargestellt werden, weil die Db mit der Anzeige nichts zu tun hat. Das Tool, mit dem du dir die gespeicherten Werte anzeigen lässt, zeigt dir nur Fragezeichen, das kann aber zB. am falschen Zeichensatz des Tools liegen.
    Mein Tip: Stringfelder in der DB als NVARCHAR (also Unicode) definieren und bei allen Applikationen, die Text reinschreiben oder auslesen, Arial Unicode verwenden. Mit dieser Kombination hat bei mir bisher immer alles funktioniert.
    Wenn nun aber die Anwendung, die die Texte in die DB schreibt, dies nicht mit Arial Unicode sondern vielleicht mit einem nicht-Unicode-chinesischen Zeichensatz macht, dann musst du im Anzeigetool dieselben Einstellungen bezüglich Codepage und Zeichensatz haben. Sonst gibt's höchstwahrscheinlich Fragezeichen.<br>
    servus, Helmu

    Comment


    • #3
      Werden die Daten auch richtig im Query Analyser angezeigt wernn diese mit einem Select abgefragt werden? Falls nein: Kannst Du uns mal einen kurzen Auszug aus der Script zeigen?

      Wenn in einem Tool nur Fragezeichen angezeigt werden hat das nicht mit der Schriftart zu tun sondern generell die Unfähigkeit des Tools Unicode-Zeichen zu behandeln. Fragezeichen heißen das die Zeichen mit der aktuellen Codepage in einen Ansi-String gewandelt wurden. Und da kommt bei chinesischen Text nun mal ein Fragezeichen raus.

      Arial Unicode ist ein problematischer Tipp da dieser Font Bestandteil von MS Office ist und <b>nicht</b> mit der eigenen Anwendung verteilt werden darf. Für NT sollte man Arial nehmen und für 2000/XP /2003 Tahoma + Unterstüzung für Asiatische Texte im Betriebssystem aktivieren

      Comment


      • #4
        Hallo,
        wie sieht die Syntax im SQL-Script aus? Ein String-Literal, der in Hochkommas gesetzt wird, muss explizit über den Präfix <b>N</b> gekennzeichnet werden:
        SET @UnicodeString = N'Das ist Unicode'

        Comment


        • #5
          Hallo Andreas,

          vielen Dank für den Tipp - das war's.

          Viele Grüße
          Hans-Pete

          Comment

          Working...
          X