TPT 'æ' 分隔符

TPT 'æ' 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 = 'æ'

在 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'

虽然原始问题已被标记为已回答,但我会 post 一些相关的信息,我发现必须从网上提供的信息和文档中找出这些信息。

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

tdload ... --SourceTextDelimiterHEX "01"

我收到以下错误

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

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

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

希望对大家有所帮助。