Ergebnis 1 bis 8 von 8

Thema: Npgsql 2.0.9 Encoding

  1. #1
    SIJ
    SIJ ist offline Neuer Benutzer
    Registriert seit
    26.11.2008
    Ort
    Köln
    Beiträge
    15

    Standard Npgsql 2.0.9 Encoding

    Hallo,

    Wie kann ich in der Npgsql Version 2.0.9 in der NpgsqlConnection Klasse Encoding auf ASCII umstellen?
    In der Dokumentation für den Connection String Parameter steht:
    Encoding
    Obsolete. Always returns the string "Unicode", and silently ignores attempts to set it.
    Ich habe jetzt ein Problem mit der Darstellung der Umlauten, weil die Datenbank mit ASCII Codierung angelegt wurde.



    Danke voraus,


    Igor

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Versuch mal:
    Code:
    SET client_encoding = 'latin1';
    als SQL-Befehl abzusetzen.

    Aber keine Ahnung, ob der Treiber das nicht abfängt.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    SIJ
    SIJ ist offline Neuer Benutzer
    Registriert seit
    26.11.2008
    Ort
    Köln
    Beiträge
    15

    Standard

    Hallo,

    leider hat den SQL Befehl nicht geholfen. Es hilft auch nicht, wenn ich den Wert direkt in der postgressql.conf Datei setze.

    Grüße,

    Igor

  4. #4
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Ok, wie genau äußert sich denn das Problem?
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  5. #5
    SIJ
    SIJ ist offline Neuer Benutzer
    Registriert seit
    26.11.2008
    Ort
    Köln
    Beiträge
    15

    Standard


    Hallo,

    Projekt : Datenbank auf PostgreSQL 8.1 mit SQL_ASCII Kodierung + Client Programm in Csharp Framework 2.0 mit dem Zugriff auf der Datenbank über Npgsql Version 1.0.0.
    Das Programm ist schon im Einsatz und die Daten wurden in der Datenbank gespeichert.
    Wir möchten jetzt auf die neue Version des Npgsql umsteigen. Nach dem Umstellen auf der Version 2.0.9 wurden alle Umlauten in den Wörtern, die schon in der Datenbank gespeichert wurden, in den Programmmasken falsch dargestellt (als Viereck).

    Grüße,

    Igor

  6. #6
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Nähe Dresden
    Beiträge
    5.337

    Standard

    Zitat Zitat von SIJ Beitrag anzeigen

    Hallo,

    Projekt : Datenbank auf PostgreSQL 8.1 mit SQL_ASCII Kodierung + Client Programm in Csharp Framework 2.0 mit dem Zugriff auf der Datenbank über Npgsql Version 1.0.0.
    Das Programm ist schon im Einsatz und die Daten wurden in der Datenbank gespeichert.
    Wir möchten jetzt auf die neue Version des Npgsql umsteigen. Nach dem Umstellen auf der Version 2.0.9 wurden alle Umlauten in den Wörtern, die schon in der Datenbank gespeichert wurden, in den Programmmasken falsch dargestellt (als Viereck).

    Grüße,

    Igor
    Kannst Du mit psql und passenden client_encoding die Daten korrekt sehen?

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  7. #7
    SIJ
    SIJ ist offline Neuer Benutzer
    Registriert seit
    26.11.2008
    Ort
    Köln
    Beiträge
    15

    Standard

    Hallo Andreas,

    Zitat Zitat von akretschmer Beitrag anzeigen
    Kannst Du mit psql und passenden client_encoding die Daten korrekt sehen?
    In psql werden die Wörter mit Umlauten aus der Datenbank falsch dargestellt. Ich habe das mit SQL_ASCII und latin1 Client_Codierung ausprobiert.
    In pgAdmin 1.8.4 werden die Daten korrekt angezeigt.

    Grüße,

    Igor

  8. #8
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.020

    Standard

    Ähm, ich glaub, wir haben da einen Denkfehler. Habe ich früher übersehen.

    Deine Datenbank hat SQL_ASCII als Encoding. Das ist aber im Prinzip kein Encoding sondern schiebt die Daten nur 1:1 in die Datenbank.

    Du hast nun zwei Möglichkeiten:

    1) Wandle die Daten in deinem Programm in UTF8/Unicode um.

    2) Portiere die Datenbank auf Latin1 oder gleich auf UTF8.

    Das Portieren auf Latin1 reicht, UTF8 wäre natürlich zukunftssicher. Wenn die Datenbank Latin1 ist, setzt du das client_encoding auf "utf8" und die Datenbank wandelt das richtig für dich um.


    Zusammengefasst: mit SQL_ASCII kommst du nicht weit.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum