2016-11-07 43 views
0

我正在嘗試使用'æ'作爲TPT的分隔符......它不起作用。有什麼方法可以將ASCII碼指定爲分隔符嗎?TPT'æ'分隔符

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

+1

ASCII 145是一個左單引號。我不相信'æ'是一個ASCII字符。這是一個鏈接到ASCII表:http://www.ascii-code.com/ –

+1

@DavidCram這是不準確的。 ASCII僅處理範圍0到127。所以如果你有八位,你將不得不解釋。對於[「DOS」代碼第437頁](https://en.wikipedia.org/wiki/Code_page_437),145對應於__æ__,U + 00E6 LATIN SMALL LETTER AE。對於[代碼頁Windows-1252](https://en.wikipedia.org/wiki/Windows-1252),145是__'__ U + 2018左側單引號。對於Latin-1或ISO/IEC 8859-1或代碼頁Windows-28591等,145(十六進制91)「代表自己」,控制字符U + 0091 PRIVATE USE ONE。我只提到了幾個代碼頁! –

+2

@DavidCram當然,在Windows-1252和真正的拉丁語-1中,使用字節值230(= hex E6)來獲得__æ__(U + 00E6 LATIN SMALL LETTER AE),並且這也在你的參考文獻'ascii -code.com'。與提問者自己給出的答案有關。 –

回答

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'