Объединение и последовательности DB2

У меня есть объединенный экземпляр DB2, в котором я объединяю данные из разных таблиц из других экземпляров DB2 (путем создания псевдонимов для всех элементов), как упоминалось в моем предыдущем вопросе: Схемы связывания DB2 между несколькими экземплярами

Однако в настоящее время у меня есть проблема с объединением пользовательских последовательностей. В исходном экземпляре я могу легко выполнять запросы типа VALUES NEXT VALUE FOR SCHEMA.SEQUENCE_NAME, но в федеративном экземпляре VALUES NEXT VALUE FOR SERVER_NAME.SCHEMA.SEQUENCE_NAME выдает SQLCODE=-204 и SQLSTATE=42704 - undefined name.

Любая идея, как получить доступ к этим последовательностям?

Любые идеи, как прозвище или добраться до тех удаленных


person user2444265    schedule 29.07.2016    source источник


Ответы (1)


Вы не можете объединить объект последовательности — вы можете объединить только таблицы/представления и хранимые процедуры.

Однако вы можете выполнить оператор SET PASSTHRU <server>, который отправит операторы SQL, которые вы выполняете, непосредственно на удаленный сервер:

SET PASSTHRU SERVER_NAME;
VALUES NEXTVAL for SCHEMA.SEQUENCE_NAME;
SET PASSTHRU RESET;
person Ian Bjorhovde    schedule 29.07.2016
comment
Спасибо, а можно как-то сделать прозрачнее - так же как и никнеймы для столов? - person user2444265; 01.08.2016
comment
Как я сказал в своем ответе, вы не можете объединить объект последовательности. Итак, нет. - person Ian Bjorhovde; 02.08.2016