【问题标题】:MariaDB: LOAD DATA INFILE with dynamic_columnsMariaDB:使用 dynamic_columns 加载数据输入
【发布时间】:2015-02-09 05:42:18
【问题描述】:

我有一个看起来像这样的表(使用 MariaDB):

CREATE TABLE table1 (
  id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
  ,c_id varchar(40) NULL
  ,email varchar(150) NULL
  ,dynamic_columns BLOB NULL
  ,created_at TIMESTAMP NOT NULL DEFAULT 0
  ,updated_at TIMESTAMP NULL DEFAULT current_timestamp ON UPDATE current_timestamp
);

我正在将一些旧表中的数据加载到此表中,并且我正在使用 MariaDB 的 dynamic_columns 根据哪个旧表存储多达 3 个动态列。 (https://mariadb.com/kb/en/mariadb/documentation/nosql/dynamic-columns/)

我想使用LOAD DATA INFILE 快​​速/批量将旧数据插入到新表中,但我不知道如何使用动态列来做到这一点。

在 Google 上搜索出现了 zilch。

【问题讨论】:

  • 老问题,我知道,但在找到这个之前我只是问了一个类似的问题。每个人都想出一个解决方案?

标签: mysql mariadb load-data-infile


【解决方案1】:

动态列以内部二进制格式存储。要在 MariaDB 服务器之外创建或更改动态列,您应该使用 MariaDB Connector/C 的动态列 API:

https://mariadb.com/kb/en/mariadb/dynamic-columns-api/

您还会在 Connector/C 的测试套件中找到一些示例:

https://github.com/MariaDB/mariadb-connector-c/blob/master/unittest/libmariadb/dyncol.c

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-01
    • 2014-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多