【问题标题】:How to add a series of data in a table?如何在表格中添加一系列数据?
【发布时间】:2020-02-11 17:04:28
【问题描述】:

我需要在 LibreOffice Base 的一个表的列中添加从 0 到 1000 的一系列数据,我想找到一种使用 SQL 命令的方法,而不是一个一个地插入所有 1000。 能不能做?

【问题讨论】:

  • 哪个 LibreOffice 版本?他们将嵌入式数据库从 HSQLDB 更改为 Firebird,答案将取决于您使用哪一个
  • Debian 9.1 上的 LibreOffice Base 5.2.7.2

标签: sql sql-insert hsqldb libreoffice-base


【解决方案1】:

传统上随 LibreOffice 和 OpenOfficeOrg 提供的 HSQLDB (1.8.0) 版本现已超过 10 年,不支持高级功能。您可以使用“拆分数据库”解决方案来使用 HSQLDB 的最新版本(2.4.x 或 2.5.x)。这已在此处详细记录:

https://forum.openoffice.org/en/forum/viewtopic.php?f=83&t=61183

使用最新版本的 HSQLDB,您可以插入来自 SEQUENCE_ARRAY 函数的值。在以下示例中,具有一列的表填充了值 (0, 1000):

CREATE TABLE T (ID INT);
INSERT INTO T (SELECT * FROM UNNEST( SEQUENCE_ARRAY(0, 1000, 1)) );

此处记录了 SEQUENCE_ARRAY 函数:

http://hsqldb.org/doc/2.0/guide/builtinfunctions-chapt.html#bfc_array_functions

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 2019-03-28
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    相关资源
    最近更新 更多