首页 > 解决方案 > 如何在以 | 分隔的列中插入以双引号开头的文本 在 db2 的导入命令中

问题描述

表包含 3 列 ID -integer Name-varchar Description-varchar

具有 .FILE 扩展名的文件具有分隔符为 | 的数据 例如:12|Ramu|“Ramu”是建筑师

我用来将数据加载到 db2 的命令:db2 "Load CLIENT FROM ABC.FILE of DEL MODIFIED BY coldel0x7x keepblanks REPLACE INTO tablename(ID,Name,Description) nonrecoverable"

数据加载如下: 12 Ramu Ramu

但我希望它为:12 Ramu“Ramu”是一名建筑师

标签: shellimportdb2sh

解决方案


看看如何定义分隔 ASCII 文件的格式。双引号 ( ") 是字符数据的可选分隔符。你需要逃避它。我没有测试过它,但我假设你像在 SQL 中那样加倍引号:

|12|Ramu|"""Ramu"" is an architect"

分隔文件 (CSV) 在RFC 4180中定义。您需要为整个字段使用引号或根本不使用引号。只有在以引号开头和结尾的字段中,才能使用其他引号。如图所示,它们需要被转义。


推荐阅读