powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Linked server to oracle text encoding
3 сообщений из 3, страница 1 из 1
Linked server to oracle text encoding
    #39613642
LargeCollider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго дня!

к microsoft sql server 2005 прилинкован oracle v11
получаю не читаемый текст на кириллице
oracle:
Код: plsql
1.
2.
3.
select * from V$NLS_PARAMETERS where (parameter = 'NLS_CHARACTERSET');

NLS_CHARACTERSET	CL8MSWIN1251


tsql: параметры сортировки Cyrillic_General_CI_AI_KS
на оракле текст храниться в VARCHAR2

решил проблему установкой параметра прилинкованного сервера:
"Имя параметров сортировки" Georgian_Modern_Sort_CI_AI_KS
(нормально текст показала только она)

все работало, до той поры как не понадобилось выбрать текст в sp, кодировка слетает и уже никак не подбирается
получается, при попытке выбрать текст в переменную он уже не читаем, хотя "прямые" селекты продолжают работать
может кто с таким сталкивался?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
alter PROCEDURE [dbo].[test]
AS
BEGIN
  DECLARE @region AS nvarchar(128)

  DECLARE [lcAddress] CURSOR FOR
    SELECT t1.region
    FROM MISC..OMS.MARS#OSA_TOPIC t1
    WHERE (34630 = t1.id)

  OPEN [lcAddress]
  FETCH NEXT FROM [lcAddress] INTO @region, @region2
  CLOSE [lcAddress]
  DEALLOCATE [lcAddress]

  SELECT @region --текст не читаем

  DECLARE [lcAddress1] CURSOR FOR
    SELECT CAST(t1.region AS nvarchar(1000)) region
    FROM OPENQUERY(MISC, 'SELECT t1.region
    FROM OMS.MARS#OSA_TOPIC t1
    WHERE (34630 = t1.id)') t1

  OPEN [lcAddress1]
  FETCH NEXT FROM [lcAddress1] INTO @region
  CLOSE [lcAddress1]
  DEALLOCATE [lcAddress1]

  SELECT @region --текст не читаем

  SELECT @region = t1.region
  FROM MISC..OMS.MARS#OSA_TOPIC t1
  WHERE (34630 = t1.id)

  SELECT @region --текст не читаем
   
  --текст нормально читаем
  SELECT t1.region
  FROM MISC..OMS.MARS#OSA_TOPIC t1
  WHERE (34630 = t1.id)

  --текст нормально читаем
  SELECT t1.region
  FROM OPENQUERY(MISC, 'SELECT t1.region
  FROM OMS.MARS#OSA_TOPIC t1
  WHERE (34630 = t1.id)') t1
END
GO
...
Рейтинг: 0 / 0
Linked server to oracle text encoding
    #39613649
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Может, хватит плодить темы?
...
Рейтинг: 0 / 0
Linked server to oracle text encoding
    #39613987
Фотография Maxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Linked server to oracle text encoding
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]