2014-02-14 60 views
0

我想知道是否可以在deltaImportQuery中調用storedProcedure。 這就是我想要做的。Solr dataimporthandler在deltaImportQuery中使用storedProcedure

<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行並將其插回。然後最後運行一條select語句從delta導入查詢中獲取一些數據。

任何人都可以告訴我,如果這是可行的solr或不?

謝謝

回答

0

簡短的回答是肯定的。

你有沒有嘗試/有任何錯誤?如果是,請看看:calling stored procedure from solr

您可能需要在存儲過程的開始處添加SET NOCOUNT ON;

相關問題