Как я могу передать int в OPEN QUERY, используя хранимую процедуру на связанном сервере? - PullRequest
0 голосов
/ 27 сентября 2019

Я пытаюсь создать хранимую процедуру, используя OPEN QUERY для связанного сервера.У меня проблема с пунктом «Где».

Я попытался преобразовать предложение where для идентификатора пользователя в varchar (10)

DECLARE @user_id as bigint = 32

SELECT * FROM OPENQUERY(LMSBUILDER, 
  'SELECT       
     cc.id,cc.user_id,cc.title,cc.library_id
     ,cc.parameters,cc.filtered,cc.embed_type
     ,ll.name, ll.title as lib_title, ll.major_version
     ,ll.minor_version,ll.patch_version,ll.runnable
     ,ll.restricted,ll.fullscreen,ll.embed_types
     , ll.semantics 
   FROM 
      coursebuilder.wp_h5p_contents as cc 
      INNER JOIN coursebuilder.wp_h5p_libraries as ll 
        ON cc.library_id=ll.id 
   WHERE 
     cc.library_id IN (35,22, 34) 
     AND cc.user_id = '' + CONVERT(NVARCHAR(10), @user_id) + ''')

. Он должен вернуть все результаты, но вместо этого я получил только ноль.Всякий раз, когда я пытаюсь запустить его в MySQL, он возвращает значения

1 Ответ

0 голосов
/ 27 сентября 2019

Этот дубликат ссылка решает ваш ответ.

Служба поддержки Microsoft Как передать переменную в запрос связанного сервера также решает вашу проблему.

...