LibreOffice: "com.mysql.jdbc.driver" не может быть загружен

Я пытаюсь связать базу LibreOffice с базой данных MySQL, в phpMyAdmin, с JDBC-соединением.

Первый шаг - выбрать, какую базу данных вы хотите выбрать: Step 1

Второй шаг - выбрать какое соединение: Step 2

Третий шаг - выбор вашей базы данных: Step 3

Когда я нажимаю "Klasse testen" (Test Class), я получаю следующую ошибку: "com.mysql.jdbc.driver не может быть загружен".

Кто-нибудь знает, как избежать этой ошибки?

Ответ 1

Сначала необходимо загрузить и "зарегистрировать" соединитель JDBC. Для этого:

  1. Перейдите на страницу http://dev.mysql.com/downloads/connector/j/ и загрузите ZIP-архив с помощью соединителя JDBC ("Независимый от платформы"); вы также можете загрузить программу установки MSI; в этом случае файл jar можно найти в Program Files (x86)/MySQL/MySQL Connector J/ (предполагая 64-битную систему Win 7)

  2. Разархивируйте архив на локальном ПК (помните путь к его содержимому) или, альтернативно, установите файл MSI;

  3. В структуре извлеченных папок есть файл "mysql-connector-java-5.0.8-bin.jar" (имя зависит от точной версии, которую вы загрузили)

  4. Запуск LibreOffice (не базовый, только LO);

  5. Открыть Tools меню → OptionsLibreOfficeAdvancedClass Path;

    enter image description here

  6. Нажмите Add Archive;

    enter image description here

  7. Выберите файл jar с шага 1-3 и нажмите OK. Теперь диалог Class Path должен выглядеть следующим образом:

    enter image description here

Это. Теперь, LO знает, где искать драйвер JDBC MySQL.

Ответ 2

BTW, для Mariadb все остальное одно и то же, но класс драйвера jdbc меняется на это:

org.mariadb.jdbc.Driver

Ответ 3

Следуя приведенным выше инструкциям и успешно подключившись к требуемой базе данных MySQL, я обнаружил, что таблицы, содержащие 0000-00-00 00:00:00 в поле DateTime, генерируют ошибку "Значение 0000-00-00 00:00:00" не загружается как java.sql.Timestamp. Поиск ссылок на "zeroDateTimeBehavior = convertToNull", поскольку решение было простым; сложная часть заключалась в том, чтобы ввести это в LibreOffice. Быстрый ответ: введите его как часть поля имени базы данных - так что "mydatabase" станет "mydatabase? ZeroDateTimeBehavior = convertToNull". Запустив под Linux Mint/Ubuntu с локальным сервером, это сработало чудеса. Счастливые данные хрустят!

Ответ 4

Если вы используете Red Hat как Linux-дистрибутивы, такие как Fedora, вы можете установить его из репозиториев с помощью yum или dnf, а затем:

В Base goto Tools/Options/Java выберите Classpath и выберите /usr/share/java/mysql-connector-java.jar в браузере файлов.

https://fedoraproject.org/wiki/QA:Testcase_MySQL_or_MariaDB_in_libreoffice-base