[IBM][CLI Driver][DB2/NT] SQL0302N

zgy13121發表於2009-04-08

近日在做datastage時,從sql server 中抽取到db2在linux上時好使,但遷到window上卻一直報

ori_Exp_v_VT1..Transformer_3: At row 13683, link "DSLink4"
DSTAGE-DB2CLI-0103`:`Row rejected.
DBMS.CODE=-302, SQLSTATE=22001, [IBM][CLI Driver][DB2/NT] SQL0302N The value of a host variable in the EXECUTE or OPEN statement is too large for its corresponding use. SQLSTATE=22001

相當鬱悶。

檢視db2在linux上配置,字符集為gbk codepage為1386

db2在window上的配置,字符集為utf-8 codepage為1208

再查,發現一箇中文在gbk中為兩個字元,到utf-8下面卻是三個字元。

再查sql,一箇中文的字元編碼長度直接為"1",暈!!!

好了,將原編碼長度(含中文列)全部改為三倍,終於ok!

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11419868/viewspace-1020130/,如需轉載,請註明出處,否則將追究法律責任。

相關文章