LibreOffice: "com.mysql.jdbc.driver" не может быть загружен
Я пытаюсь связать базу LibreOffice с базой данных MySQL, в phpMyAdmin, с JDBC-соединением.
Первый шаг - выбрать, какую базу данных вы хотите выбрать:
Второй шаг - выбрать какое соединение:
Третий шаг - выбор вашей базы данных:
Когда я нажимаю "Klasse testen" (Test Class), я получаю следующую ошибку: "com.mysql.jdbc.driver не может быть загружен".
Кто-нибудь знает, как избежать этой ошибки?
Ответы
Ответ 1
Сначала необходимо загрузить и "зарегистрировать" соединитель JDBC. Для этого:
-
Перейдите на страницу http://dev.mysql.com/downloads/connector/j/ и загрузите ZIP-архив с помощью соединителя JDBC ("Независимый от платформы"); вы также можете загрузить программу установки MSI; в этом случае файл jar можно найти в Program Files (x86)/MySQL/MySQL Connector J/
(предполагая 64-битную систему Win 7)
-
Разархивируйте архив на локальном ПК (помните путь к его содержимому) или, альтернативно, установите файл MSI;
-
В структуре извлеченных папок есть файл "mysql-connector-java-5.0.8-bin.jar" (имя зависит от точной версии, которую вы загрузили)
-
Запуск LibreOffice (не базовый, только LO);
-
Открыть Tools
меню → Options
→ LibreOffice
→ Advanced
→ Class Path;
-
Нажмите Add Archive;
-
Выберите файл jar с шага 1-3 и нажмите OK. Теперь диалог Class Path
должен выглядеть следующим образом:
Это. Теперь, 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