Ich versuche LibreOffice Base v5.1.4.2 zu erhalten, die auf Ubuntu v16.04 läuft, um eine Verbindung zu einer Hive v1.2.1-Datenbank herzustellen JDBC. Ich habe die folgenden Gläser, heruntergeladen von Maven Central, auf Libreoffice Klassenpfad ('Extras -> Libreoffice -> Erweitert -> Class Path'):LibreOffice Base JDBC-Verbindung zu Hive gibt "Method not supported" zurück, wenn gültige select-Anweisung ausgeführt wird
hive-common-1.2.1.jar
hive-jdbc-1.2.1.jar
hive-metastore-1.2.1.jar
hive-service-1.2.1.jar
hadoop-common-2.6.2.jar
httpclient-4.4.jar
httpcore-4.4.jar
libthrift-0.9.2.jar
commons-logging-1.1.3.jar
slf4j-api-1.7.5.jar
ich dann neu gestartet Libreoffice geöffnet Base ausgewählt ‚Eine Verbindung mit einem bestehende Datenbank‘->‚JDBC‘und legen Sie die folgenden Eigenschaften:
ich die Anmeldeinformationen eingegeben und klickte auf die‚Taste Test Connection‘, die ein‚die Verbindung wurde erfolgreich etabliert‘-Meldung zurückgegeben. Groß!
In der LibreOffice Base UI waren die Optionen im Bereich "Tabellen" ausgegraut. Die Optionen auf der Registerkarte "Abfragen" waren nicht verfügbar. Daher habe ich versucht, eine Verbindung mit Hive herzustellen.
Der ‚Assistent verwenden, um Abfrage zu erstellen‘ Option für ein Kennwort aufgefordert, und dann kehrt „Die Feldnamen von‚airline.on_time_performance‘können nicht abgerufen werden.“
Die JDBC-Verbindung ist Lage, um die Tabellen zu Hive und in der Liste zu verbinden, wenn es Probleme Abrufen der Spalten zu haben scheint. Wenn ich versuche, eine einfache select-Anweisung auszuführen, gibt die ‚Abfrage erstellen in SQL-Ansicht‘ Option eine etwas kryptische Nachricht „Methode nicht unterstützt“:
Die Fehlermeldung ist ein bisschen vage. Ich vermute, dass ich eine Abhängigkeit vermisse, da ich am in der Lage bin, eine Verbindung zu Hive aus Java mit JDBC herzustellen.
Ich bin gespannt, ob jemand in der Gemeinde LibreOffice Base mit Hive arbeitet. Wenn ja, was fehlt mir?
Sie sind dutzende Versionen des JDBC-Treibers veraltet. Ich fand 2.5.4 mit nicht viel Mühe. Wahrscheinlich ist der, den Sie verwenden, veraltet w.r.t. die Java-JDBC-Version. Aktualisieren. – EJP
Angesichts des Fehlers "Feldnamen ... konnte nicht abgerufen werden" hatte diese Version des JDBC-Treibers keine Unterstützung für 'DatabaseMetaData.getColumns'. –