1

我的情况如下: 两个不同办公室的两个数据库通过公司网络连接在一起。其中一个数据库是 MySQL,它保存可以更改的数据,但字段类型永远不会更改。这是整个公司都可以访问的标准信息。第二个数据库是 LibreOffice Base。它保留了额外的变化,包括字段的数量和字段的类型,因为公司可以改变他们对主 MySQL 数据库中产品的额外信息的想法。

我只需要将 MySQL 数据库中的一张表连接到 LO Base 数据库中的一张。这两个表都有一个共同的字段,称为“代码”。目前,我们手动将 MySQL 中的大量数据输入到 LO 中,以使用“报表生成器”制作一个漂亮的报表,其中包含有关产品的所有额外信息。这是非常适得其反的,如果我可以只对这两个表执行连接然后在报表生成器中使用该连接会更容易。这将节省大量时间并且不易出错。

问题是我不知道该怎么做。LO Base 是一个非常有限的系统,但我只能使用它,因为安全性不允许更多。我在想我需要在计算机上创建另一个 LO Base 数据库并将其连接到 MySQL 数据库,这样我就能够以某种方式将两个 LO Base 文件连接在一起????这是正确的思路吗?我不能只使用 LO 的 ODBC/JDBC/Direct Connect 功能并进行连接吗?

另外,如果我必须制作一个单独的 LO Base 文件,连接会是什么样子?我从来没有在这样的两个文件之间做过一个。

第三,是否有可能有一个查询显示我的 LO 基础数据库中不与主数据库连接的所有记录,因为这意味着我输入了错误的“代码”?这个查询需要在 LO Base 中完成,这就是我问的原因。我做了一个非常简单的连接,不会导致 LO 爆炸,但这有点复杂。

4

1 回答 1

0

不要认为 LibreOffice Base 本身就支持使用不同驱动程序的混合数据源。每个 LibreOffice 数据库只使用一个连接器/驱动程序,或者它使用 HSQLDB 引擎,但不是混合使用。

Python 可用于连接数据库;从 Python 进入 LO 的许多选项在另一个主题/答案(如何在 Python 2.7 中访问 ODB 文件)中进行了讨论。Python 可以独立使用,也可以在宏工具下的 LibreOffice 中使用。也可以使用 LibreOffice Basic 建立连接,请参阅 API 参考,但不了解任何代码示例。

Python 也可以使用MySQL 连接器。桥接数据库后,最可能的选择是使用 Python SQL 命令将数据移植/插入到一个数据库中,将所有数据传输到同一位置。

于 2015-01-28T04:30:59.983 回答