0

我正在尝试使用 Solr 的数据导入处理程序 (DIH) 从 MySQL 数据库中导入多个表。DIH 不会从第二个表“详细信息”中导入数据。

我的数据库配置文件是

<document>
    <entity name="item" pk="ListingId" query="SELECT * FROM item as item where listingid=360245270">
        <entity name="detail" pk="ListingId" query="SELECT Body FROM detail where listingid='${item.listingid}'">
            <field column="Body" name="Body" />
        </entity>
     </entity>
</document>

我监控了 MySQL 查询日志,执行的两个重要查询是:

SELECT * FROM item as item where listingid=360245270

SELECT Body FROM listeditemdetail where listeditemdetail.listingid=''

显然,配置文件中的“${item.listingid}”部分没有按要求工作。我为表名和列名尝试了不同的拼写,但无法正常工作。

4

1 回答 1

2

(试一试)尝试删除主键并使用大写,例如:-

<document name="items">
    <entity name="item" query="SELECT * FROM item as item where listingid=360245270">
        <field column="LISTINGID" name="listingid" />
        <entity name="detail" query="SELECT Body FROM detail where listingid='${item.LISTINGID}'">
            <field column="Body" name="Body" />
        </entity>
    </entity>
</document>
于 2012-11-14T04:11:21.017 回答