2014-02-14 2 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 문을 실행하여 델타 가져 오기 쿼리에서 일부 데이터를 다시 가져옵니다.

누구나 가능할지 말해 줄 수 있습니까?

감사합니다.

답변

0

짧은 대답은 '예'입니다.

오류가 있습니까? 예인 경우 다음을 확인하십시오. calling stored procedure from solr

저장 프로 시저의 시작 부분에 SET NOCOUNT ON;을 추가 할 수 있습니다.