TPT'æ'Delimiter

时间:2016-11-07 16:38:48

标签: ascii teradata delimiter

我正在尝试使用'æ'作为TPT的分隔符...它不起作用。有没有办法将ASCII码指定为分隔符?

ATTRIBUTES
(
VARCHAR PrivateLogName = 'dataconnector_log',
VARCHAR DirectoryPath  = @jobvar_datafiles_path,
VARCHAR FileName       = @jobvar_file_load,
VARCHAR Format         = 'Delimited',
VARCHAR OpenMode       = 'Read',
VARCHAR TextDelimiter  = '    VARCHAR PrivateLogName = 'dataconnector_log',
VARCHAR DirectoryPath  = @jobvar_datafiles_path,
VARCHAR FileName       = @jobvar_file_load,
VARCHAR Format         = 'Delimited',
VARCHAR OpenMode       = 'Read',
VARCHAR TextDelimiter  = 'æ'
);
  

VARCHAR TextDelimiter ='æ'

2 个答案:

答案 0 :(得分:0)

teradata中的方法是将字符的十六进制代码放在

  ATTRIBUTES
  (
    VARCHAR PrivateLogName = 'dataconnector_log',
    VARCHAR DirectoryPath  = @jobvar_datafiles_path,
    VARCHAR FileName       = @jobvar_file_load,
    VARCHAR Format         = 'Delimited',
    VARCHAR OpenMode       = 'Read',
    VARCHAR TextDelimiterHex  = 'E6'    
  );
  

VARCHAR TextDelimiterHex ='E6'

答案 1 :(得分:0)

尽管原始问题已标记为已回答,但我还是会发布一些相关的信息,我发现这些信息非常需要从在线可用信息和文档中找出。

如果您需要将特殊字符指定为 TDLOAD(Teradata Easy Load Utility)的字段分隔符,您可以使用该字符的十六进制表示来完成。就我而言,这是 unicode 编码中的不可打印字符。但是,当我执行

tdload ... --SourceTextDelimiterHEX "01"

我收到以下错误

$FILE_READER[1]: TPT19128 !ERROR! Attribute 'TextDelimiter' conflicts with 'TextDelimiterHEX'

据我所知,这个问题既没有记录也没有在任何地方讨论,我觉得这很奇怪。幸运的是,我能够通过像这样指定空的 TextDelimiter 来解决它

tdload ... --SourceTextDelimiterHEX "01" -d ""

我希望它可以帮助某人。