Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Teradata 从Unicode字符集更新具有拉丁字符集的表_Teradata - Fatal编程技术网

Teradata 从Unicode字符集更新具有拉丁字符集的表

Teradata 从Unicode字符集更新具有拉丁字符集的表,teradata,Teradata,我正在尝试从源表(字符集为unicode)中使用拉丁字符集(在我的目标中)更新一个表。 我得到了一个类似“字符串包含不可翻译字符”的错误。 然后,我删除了表格并将字符集更改为拉丁语,但在该表格中重新插入数据时出现了相同的错误 在这种情况下我能做什么? 下面是我的更新 update AM1 from DB1.AM_7541 AM1, (sel distinct TRIM(SB.BUILDING_NAME) NEID, trim( leading '0' from sb.MAN) LCDMN

我正在尝试从源表(字符集为unicode)中使用拉丁字符集(在我的目标中)更新一个表。 我得到了一个类似“字符串包含不可翻译字符”的错误。 然后,我删除了表格并将字符集更改为拉丁语,但在该表格中重新插入数据时出现了相同的错误

在这种情况下我能做什么? 下面是我的更新

update AM1 from  DB1.AM_7541 AM1,
(sel  
distinct TRIM(SB.BUILDING_NAME) NEID, 
trim( leading '0' from sb.MAN) LCDMNO,
AM.Netw_equip,
LAST_TRANSACTION_DATE,
DISCONNECT_DATE,
SEQUENCE_NUMBER
from DB1.PLTL SB
inner join DB1.AM_7541 AM
on  trim( leading '0' from sb.MAN)=AM.AM_NUM
where (SB.LAST_TRANSACTION_DATE,trim(sb.MAN),SB.SEQUENCE_NUMBER)
in  ( sel max(LAST_TRANSACTION_DATE),trim(MAN) lcdmno,max(cast(SEQUENCE_NUMBER as integer))
from DB1.PLTL 
where DISCONNECT_DATE ='2500-01-01 00:00:00' and trim(lcdmno) not like '' 
and lcdmno is not null    
group by lcdmno
)
and TRIM(SB.BUILDING_NAME) not like ''
and DISCONNECT_DATE ='2500-01-01 00:00:00'
) der
set Netw_equip=der.NEID
where AM1.AM_NUM=der.lcdmno
我的表DB1.PLTL是具有unicode字符集的源表,DB1.AM_7541具有拉丁字符集

谢谢。
Amit

因为您的源代码是unicode,所以最好对这两个表都使用unicode。如果您不能这样做,您可以使用
translate
: 选择

翻译(使用UNICODE\u到\u拉丁语)

请记住,并非所有unicode字符都会转换为拉丁语,因此可能会出现错误。如果你这样做了,你可以用下面的方法把一些难看的案例陈述放在一起。但是你最好在任何地方都使用unicode。

或者你可以使用
translate(使用unicode\u TO\u LATIN WITH ERROR)
将所有不可翻译的字符替换为子(替换)字符。我更喜欢使用
translate\u chk
和case语句来控制用什么替换不可翻译的字符。但是翻译。。。带错误的当然也可以。我的一个字段是十进制,一个是日期时间。我也需要翻译吗?不,翻译只针对字符串数据
translate(<your latin column> USING UNICODE_TO_LATIN)