SharePoint - внешние типы контента в базе данных Oracle - PullRequest
0 голосов
/ 27 декабря 2018

У меня есть база данных Oracle, к которой я пытаюсь подключиться через BCS.

Существует SQL Server в качестве проходного, который просматривает данные Oracle.

Ключ PK в Oracleдля таблицы это НОМЕР (7).

При выборе представления из SQL Server я могу очень быстро просмотреть одну запись.Тем не менее, при попытке создать операцию чтения элемента через SPD по умолчанию устанавливается значение PK десятичное.В результате SP при выполнении операции чтения элемента преобразует его в этот вызов, который я обнаружил в профилировщике:

exec sp_executesql N'SELECT [RECORD_CODE] , [PAGETITLE] , [PROJECT_CODE] , [CONTENT_DATA] FROM [dbo].[CONTENT_MAN_CONTENT_MAIN] WHERE [RECORD_CODE] = @RECORD_CODE',N'@RECORD_CODE decimal(5,0)',@RECORD_CODE=19258

Это преобразование в десятичное число вызывает полное сканирование данных, что означает чтениеЭкран работы очень медленный.

Итак, почему вопросы таковы: 1. Можно ли изменить тип данных во внешнем типе контента на целое число?2. Если нет, какие еще варианты у меня есть?

Я не могу изменить структуру таблицы и предпочел бы не создавать сервис, если можно использовать BCS.

1 Ответ

0 голосов
/ 27 декабря 2018

Я изменил процесс, чтобы использовать хранимую процедуру вместо прямого выбора, поэтому теперь у меня больше контроля над приведением типов данных.

Теперь я могу получить одну запись и нажатьПК напрямую из Oracle.

...