solr 不导入 id 以外的字段

solr does not import fields other than id

我正在使用 Solr DataImportHandler 模块。这是我的配置;

<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>

出于某种原因,只有 id 字段在导入,而其余字段没有导入。

会是什么原因呢?我错过了什么吗?

您可能错过了 schema.xml 文件中的以下条目

<field name="id" type="string" indexed="true" stored="true" required="true"/> 
<field name="firstname" type="string" indexed="true" stored="true"/> 
<field name="lastname" type="string" indexed="true" stored="true"/>

此处 id 的类型可以是 int。看看你想要什么。

<field name="id" type="int" indexed="true" stored="true" required="true"/> 

确保您的 ID 和唯一字段是正确的。 我遇到了同样的问题,更改 Pk 和唯一字段名称并且它工作正常。