Ich fange an, Solr zu lernen (mit der Version 5.5.0). Ich verwende verwaltete-Schema und Daten-Conflif.xml-Dateien in zwei sql-Server-Tabellen: Firma & Kontakt.Solr: wie Abfrage bestimmten Entity, wenn mehrere
Ich bin in der Lage, von der UI, den Datenimport auszuführen, eine Entität zu einer Zeit auszuwählen.
Dies ist die Botschaft, die ich für Gesellschaft bekommen:
Indizierung abgeschlossen. Hinzugefügt/Aktualisiert: 8.293 Dokumente. Löschte 0 Dokumente. (Dauer: 01s) Anfragen: 1 (1/s), Fetched: 8293 (8293/s), Skipped: 0, verarbeitete: 8293 (8293/s) gestartet: weniger als eine Minute vor
Dies ist Nachricht, die ich bekomme für Kontakt:
Indizierung abgeschlossen. Hinzugefügt/Aktualisiert: 81 Dokumente. Löschte 0 Dokumente. Anfragen: 1, Fetched: 81, Skipped: 0, verarbeitet: 81 gestartet: weniger als eine Minute vor
Wenn ich den Abschnitt Abfrage klicken, ich möchte eine Abfrage durchzuführen alle Kontakt, um zu sehen, und/oder Firmendatensätze, nicht unbedingt kombiniert, sondern nur in der Lage sein, sie abzufragen.
Ich bin nicht sicher, wie dies zu tun ist, ist es möglich, Hilfe zu bekommen, um zu verstehen, wie man angibt, für welche Entität ich die Abfrage ausführen möchte?
Hier sind die 2 Dateien, die ich geändert:
Daten cofig.xml:
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://sql.server.com\test;databaseName=test"
user="testusr"
password="testpwd"/>
<document>
<entity name="Company" pk="CompanyID" query="SELECT * FROM tblCompany">
<field column="CompanyID" name="company_companyid"/>
<field column="Name" name="company_name"/>
<field column="Website" name="company_website"/>
<field column="Description" name="company_description"/>
<field column="NumberOfEmployees" name="company_numberofemployees"/>
<field column="AnnualRevenue" name="company_annualrevenue"/>
<field column="YearFounded" name="company_yearfounded"/>
</entity>
<entity name="Contact" pk="ContactID" query="SELECT * FROM tblContact">
<field column="ContactID" name="contact_contactid"/>
<field column="FirstName" name="contact_firstname"/>
<field column="MiddleInitial" name="contact_middleinitial"/>
<field column="LastName" name="contact_lastname"/>
<field column="Email" name="contact_email"/>
<field column="Description" name="contact_description"/>
</entity>
</document>
</dataConfig>
Managed-Schema:
<!-- Company Begin -->
<field name="company_companyid" type="string" indexed="true"/>
<field name="company_name" type="string" indexed="true"/>
<field name="company_website" type="string" indexed="true"/>
<field name="company_description" type="string" indexed="true"/>
<field name="company_numberofemployees" type="string" indexed="true"/>
<field name="company_annualrevenue" type="string" indexed="true"/>
<field name="company_yearfounded" type="string" indexed="true"/>
<!-- Company End -->
<!-- Contact Begin -->
<field name="contact_contactid" type="string" indexed="true" />
<field name="contact_firstname" type="string" indexed="true"/>
<field name="contact_middleinitial" type="string" indexed="true"/>
<field name="contact_lastname" type="string" indexed="true"/>
<field name="contact_email" type="string" indexed="true"/>
<!-- Contact End -->
UPDATE
Ich versuchte, mit dem Feld fl company_companyid auszuwählen, aber ich habe keine Ergebnisse erhalten.
Ich bin mit einem Screenshot:
Nur um sicherzustellen, dass ich verstehe, Sie wollen eine Abfrage ausführen zu können und erhalten zum Beispiel nur auf die Entität Kontakt verwandte Bereiche? – TMBT
Ich möchte in der Lage sein, eine Abfrage auszuführen und Felder für Firma oder Kontakt zu erhalten, nicht kombiniert, nur wie benötigt. Entweder eine Abfrage gegen Firmenfelder oder eine Abfrage nach Kontaktfeldern. Ich hoffe das macht Sinn. Vielen Dank. –