Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Кодировка текстов сторонних продуктов в базе MSSQL  [new]
kain111
Member

Откуда:
Сообщений: 226
Добрый день!
Ситуация : Есть такой программный продукт как SAP BO который хранит все свои настройки в базе в определенной структуре, всего 6 табличек. в структуре я примерно разобрался. в этой системе используется несколько идентификаторов для каждого объекта. один просто id типа int и другой CUID вида 'AV5u1KhKNdVAqjRSJJdI0iU' т.е. набора символов английского алфавита и цифр.
Возникают ситуации когда необходимо найти объект по как раз по CUID. встроенных инструментов я нашел только по ID.
Но при выборе названия из соответствующего поля там хранится строка вида
автор
!`|>!`|<!BE`|>!@|&4^@"`~2"E}7="1|^!=@|&}3!Z{/|^}=#N"`|4^"1!=@|&}-3#^~B"E9~B"`}W!=@|&^"/}G~2"E|N"`E!=@B|-"=Q5!B|/!;{:
вообще там хранится бинарное значение
автор
0x414B21417C4E22314321417C4E224D514F21417C4E224D53452F3D29213B4E
. но судя по тому что другие значения типа даты нормально переводятся то и это надо так же.
В инструментах BO название отображается корректно русское.
В обсчем есть какие то команды позволяющие определить кодировку и затем декодировать это поле ?
1 ноя 12, 11:51    [13407229]     Ответить | Цитировать Сообщить модератору
 Re: Кодировка текстов сторонних продуктов в базе MSSQL  [new]
kain111
Member

Откуда:
Сообщений: 226
правка. пытаюсь получить данные запросом из БД подключившись Managment Studio. сервер
автор
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1617.0 (X64) Apr 22 2011 19:23:43 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 5.2 <X64> (Build 3790: Service Pack 2) (Hypervisor)


автор
SELECT TOP 1000
convert(varchar(255),convert(varbinary(4000), [ObjName])) ,
convert(varchar(255),convert(varbinary(255), [SI_CUID]))
,convert(varchar(255),convert(varbinary(255), [LastModifyTime]))
FROM [BOBJ].[dbo].[CMS_InfoObjects6]
where [SI_CUID]=convert(varbinary(255),convert(varchar(255), 'AV5u1KhKNdVAqjRSJJdI0iU'))
1 ноя 12, 11:59    [13407309]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить