2016-05-26 3 views
1

Я использую Solr DataImportHandler модуль. Вот моя конфигурация;solr не импортирует поля, отличные от id

<dataConfig> 
    <dataSource type="JdbcDataSource" 
       name="sql" 
       driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
       url="jdbc:sqlserver://localhost;databaseName=AdventureWorks2008;integratedSecurity=true;"/> 
    <document> 
    <entity name="Person" dataSource="sql" 
     pk="BusinessEntityID" 
     query="select BusinessEntityID,FirstName,LastName FROM [Person].[Person]" 
     deltaImportQuery="select BusinessEntityID,FirstName,LastName FROM [Person].[Person] WHERE id='${dih.delta.id}'" 
     deltaQuery="SELECT BusinessEntityID FROM [Person].[Person] WHERE ModifiedDate > '${dih.last_index_time}'"> 
     <field column="BusinessEntityID" name="id"/> 
     <field column="FirstName" name="firstname"/>  
     <field column="LastName" name="lastname"/>  
    </entity> 
    </document> 
</dataConfig> 

по какой-то причине только поле ввода импортируется, но не все остальное.

enter image description here

Что бы быть причиной? Я что-то упускаю?

+0

Вы упомянули другие поля в schema.xml? не могли бы вы поделиться с schema.xml? –

+0

Что-то вроде этого ... <имя поля = "lastname" type = "string" indexed = "true" stored = "true" /> –

+0

@AbhijitBashetti oh, возможно, этого и не хватает, поскольку Я довольно новичок в solr, я еще не представил конфигурацию схемы. Позвольте мне попробовать это и, пожалуйста, укажите ваш комментарий в качестве ответа. –

ответ

1

Вы, возможно, пропустили следующие записи в файле schema.xml

Здесь типа для id может быть int. Просто проверьте, что вы хотите.

<field name="id" type="int" indexed="true" stored="true" required="true"/> 
Смежные вопросы