将句点分隔的文本文件加载到 db2 中

Load period-separated text file into db2

我需要将整个文本文件(仅包含 ASCII 文本)加载到数据库中(DB2 Express 版)。 table 只有两列 EXAMPLE_TABLE (ID, TEXT)。 ID 列是 PK,具有自动生成的数据,而文本是 VARCHAR(50).

现在我需要使用load/import实用程序将文本中的每个句子保存到EXAMPLE_TABLE中,也就是说,我们每个句子都有一行。行 ID 应自动生成,但已在 table 创建时指定。导入实用程序应考虑句点“.”。作为分隔符(否则我不知道如何提取句子)。

如何在 DB2 中完成此操作?

提前致谢!

使用分隔文件时,标准 DB2 importload 实用程序无法指定行记录终止符。 LF 字符(或 Windows 上的 CRLF)是唯一可以使用的记录终止符。

因此,在使用 importload,生成一个文件,每个句子单独一行。

您可以使用 tr:

cat file | tr '.' '\n' > file.load
db2 "import from file.load of del insert into example_table (text)"

请记住,您可能还需要考虑句点后的空格,因此您不会在 table 中的每个 "sentence" 的开头以前导空格结尾,您可能还想考虑额外的空格(即每个段落之间的空行)。