3

将固定宽度的文本文件导入sqlite表的好方法是什么,最好不使用外围软件?

例如指定每个字段的宽度

Field 1: 10 characters starting with the second character
Field 2: 5  characters starting with the twelfth character
Field 3: 7  characters starting with the eighteenth character

线

AABCDEFGHIJABCDEAABCDEFGA

将被导入为:

Field 1     Field 2  Field 3
ABCDEFGHIJ  ABCDE    ABCDEFG

谢谢

4

2 回答 2

8

上面答案中的链接适用于通用 SQL。这是在 SQLite 中执行此操作的一种方法:

CREATE TABLE fixed_width_table (full_string CHAR);
.import fixed_width_file.txt fixed_width_table

CREATE TABLE tmp AS
Select
    SUBSTR(full_string,1,11) AS field1
    ,SUBSTR(full_string,2,5) AS field2
    ,SUBSTR(full_string,2,7) AS field3
FROM fixed_width_table
于 2014-09-27T19:45:08.327 回答
1

这些sqlite3工具仅导入 CSV 文件。

有可以导入固定宽度文件的第三方工具,但这个答案显示了如何在 SQLite 中使用字符串函数执行此操作。

于 2012-09-14T12:34:04.657 回答