OTRS+MSSQL на utf-16, убираем кракозябры
Добавлено: 24 сен 2014, 11:32
Подключили OTRS к БД на MSSQL(Microsoft SQL Server ODBC Driver 1.0 for Linux), все хорошо, но кракозябры не совсем читабельны. Для решения проблемы изменяем запрос создания вьюхи на MSSQL, добавляем 'cast', таким образом мы уходим от nvarchar и nchar, использующих UCS-2, и получаем более привичный для utf-8 varchar, char:
пишу сюда, так как сам копал инфу 3 дня, может кому-нибудь пригодится. По скорости поиска клиентов разницы между локальной БД или БД в сети - не увидел(31000 записей)
Код: Выделить всё
CREATE VIEW otrs
AS
SELECT cast([***] as int)
,cast([***] as varchar(max))
,cast([***] as varchar(32))
,cast[***] as varchar(max))
,cast([***] as varchar(max))
,cast([***] as varchar(32))
,cast([***] as varchar(max))
,cast([***] as varchar(32))
,STUFF((SELECT ' '+ *** +',' FROM dbo.*** TT WHERE TT.***=T.*** FOR XML PATH('')),1,1,'')
FROM dbo.***
GROUP BY ***, ***, ***, ***, ***, ***, ***, ***