Решите dataimporthandler использовать хранимую процедуру в deltaImportQuery
Мне было интересно, если это возможно вызвать хранимую процедуру в deltaImportQuery. Это то, что я пытаюсь сделать.
<entity name="entity1" transformer="RegexTransformer" pk="id"
query="SELECT * FROM table1
INNER JOIN tabl2 ON table2.tbl1Id = table1.id"
deltaImportQuery="exec populatetable2 ${dih.delta.id}"
deltaQuery="select id from table1 where dtmodified > '${dih.last_index_time}'"
</entity>
ALTER PROCEDURE (@col1 int)
AS
BEGIN
DELETE FROM table2 WHERE tbl1Id = col1
INSERT INTO table2 (col1,col2) Values(1,2)
SELECT * FROM table2
END
В моей процедуре магазина я удаляю n строк и вставляю их обратно. И, наконец, запустите оператор выбора, чтобы получить некоторые данные из запроса на импорт дельты.
Может кто-нибудь сказать мне, если это возможно в Solr или нет?
Спасибо
1 ответ
Решение
Короткий ответ будет да.
Вы пробовали / получили какие-либо ошибки? Если да, обратите внимание: вызов хранимой процедуры из solr.
Вы можете добавить SET NOCOUNT ON;
в начале хранимой процедуры.