Znaki zapytania zamiast polskich znaków

0

Cześć. Mam Linked Server na silniku SQL Servera na którym znajduje się baza danych MySQL z kodowaniem znaków ustawionym na UTF8. Jednakże po odczycie danych za pomocą komendy OPENQUERY po stronie SQL Servera (COLLATION Polish_CI_AS) polskie znaki zamieniane są na znaki zapytania. Co powinienem zrobić, żeby rozwiązać ten problem?

1

Co mogło pójść nie tak? Od klienta bazodanowego do MySQLa jest kilka miejsc, gdzie może zachodzić "automagiczna" konwersja znaków.

Klient bazodanowy (kodowanie#A) --- MSSQL Server (kodowanie#B) --- driver (Kodowanie#C) --- MySQL(Kodowanie#D)

Nie zaszkodzi podać więcej danych dotyczących problemu:

  • Jakie masz kodowanie na serwerze MSSQL ?
  • Jakie masz kodowanie zdefiniowane dla LinkedServera (źródle danych, z którego linked server korzysta).
  • Jakie masz kodowanie na kliencie łączącym się do MSSQLa?

Póki co, wiemy, że Kodowanie#D = UTF8. Zweryfikowałeś że faktycznie UTF8, czy ktoś Ci powiedział i wierzysz na słowo?

0

To jeszcze która wersja SQL Server. Od 2019 jest obsługa UTF_8. Przy colaltion trzeba dodać suffix UTF_8
W Twoim przypadku coś takiego:
COLLATION Polish_CI_AS_UTF8

0
jurek1980 napisał(a):

To jeszcze

To jeszcze o o jakim kliencie mowa?
Jedn z gotowym klientów (programów do baz), czy jakiś kod własny

1 użytkowników online, w tym zalogowanych: 0, gości: 1