Sziasztok! Egy olyan problémával küzdők már egy ideje OTRS-el, és már feltúrtam majdnem az egész világhálót is, miszerint van egy MSSQL 2016-os adatbázisom ami össze van kapcsolva OTRS-el, működik is, OTRS-en keresztül olvasom is az adatbázist. A probléma ott adódik hogy nem jeleníti meg megfelelően az ékezetes karaktereket.
Ha az OBDC driveren keresztül kapcsolódok az MSSQL adatbázishoz akkor megfelően látom az adatokat, de midőn OTRS-en keresztül sajna hibásan. Pedig elméletileg az MSSQL adatbázis UTF-8.
Előre is köszönöm a segítséget illetve az ötleteket.
- 1048 megtekintés
Hozzászólások
Nem használok OTRS-t, így próbálok általános választ adni a kérdésre.
Az MSSQL adatbázishoz feltehetőleg egy DSN megadásával csatlakozol. Az Unicode támogatás a protokoll 7.0-ás verziójával (MSSQL 7.0) érkezik, tehát a protokoll verziószámát legalább 7.0-ban kell meghatározni a DSN-ben az alábbiakhoz hasonlóan:
host=sql.cegnev.hu;port=1433;version=7.1;charset=UTF-8
Lásd még:
http://www.freetds.org/userguide/choosingtdsprotocol.htm
- A hozzászóláshoz be kell jelentkezni
Az MSSQL adatbázis biztosan nem UTF-8. Ugyanis MSSQL alatt az nvarchar/nchar típusú oszlopok nem UTF-8, hanem (mint az Unicode karakterek amúgy a Windows vonalon már kb. 25 éve) UCS2 karakterkódolással vannak tárolva.
Én ezeket megnézném:
https://stackoverflow.com/questions/5912082/automatic-character-encodin…
https://www.easysoft.com/developer/languages/perl/sql-server-unicode.ht…
- A hozzászóláshoz be kell jelentkezni
Az önmagában nem baj, hogy "belül" UCS2, ha az adatbázis-illesztő kifelé UTF-8-at beszél.
- A hozzászóláshoz be kell jelentkezni