LibreOffice:无法加载’com.mysql.jdbc.driver’

我正在尝试使用JDBC连接将LibreOffice Base与MySQL数据库(在phpMyAdmin中)连接起来。

第一步是选择要选择的数据库: 步骤1

第二步是选择哪个连接: 第2步

第三步是选择你的数据库: 第3步

当我按下’Klasse testen’(测试类)时,我收到以下错误:’com.mysql.jdbc.driver无法加载’。

有谁知道如何避免这个错误?

您需要先下载并“注册”JDBC连接器。 为此:

  1. 转到http://dev.mysql.com/downloads/connector/j/并使用JDBC连接器下载ZIP存档(“平台无关”); 您也可以下载MSI安装程序; 在这种情况下,jar文件可以在Program Files (x86)/MySQL/MySQL Connector J/ (假设是Win 7 64bit系统)

  2. 解压缩本地PC上的存档(记住其内容的路径),或者安装MSI文件;

  3. 在解压缩的文件夹结构中,有一个文件“mysql-connector-java-5.0.8-bin.jar”(名称取决于您下载的确切版本)

  4. 运行LibreOffice(不是Base,只是LO);

  5. 打开菜单Tools – > Options – > LibreOffice – > Advanced – > 类路径 ;

    在此处输入图像描述

  6. 单击添加存档 ;

    在此处输入图像描述

  7. 从步骤1-3中选择jar文件,然后单击“ 确定” 。 现在,“ Class Path对话框应如下所示:

    在此处输入图像描述

而已。 现在,LO知道在哪里寻找MySQL JDBC驱动程序。

如果您使用像Fedora这样的Linux发行版之类的Red Hat,可以使用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

顺便说一句,对于Mariadb来说,其他一切都是一样的,但是jdbc驱动程序类改为:

 org.mariadb.jdbc.Driver 

按照上面的说明并成功连接到所需的MySQL数据库后,我发现在DateTime字段中包含0000-00-00 00:00的表生成错误‘Value 0000-00-00 00:00:00’可以不能作为java.sql.Timestamp加载 。 找到对“zeroDateTimeBehavior = convertToNull”的引用作为解决方案很容易; 棘手的部分是在LibreOffice中输入它的位置 。 快速回答:将其作为数据库名称字段的一部分输入 – 因此’mydatabase’将变为’mydatabase?zeroDateTimeBehavior = convertToNull’。 在Linux Mint / Ubuntu下运行本地主机服务器,这就产生了奇迹。 快乐的数据运算!