尝试在 ESQL 中使用以下连接符号向变量添加特殊字符 (%) 符号,它给了我以下错误

Trying to add special character (%) sign to variable with following concatenation sign in ESQL, it gives me the the below error

尝试使用以下连接符号向变量添加特殊字符 (%) 符号,但出现错误:无效字符。

DECLARE Percent CHARACTER CAST ( ' %' AS CHARACTER CCSID 1208);

SET AlocatedAmount = 45

SET InPercent = AlocatedAmount||'%'

结果应该是:InPercent = 45%

错误:无效characters::45 %

这里出了什么问题?

AlocatedAmount 似乎是一个INTEGER,关于你不能使用连接运算符。 您需要先将其转换为 CHARACTER:

SET InPercent = CAST(AlocatedAmount AS CHARACTER) || '%';

因此也可以选择在 CAST 中使用 FORMAT

DECLARE Num INTEGER;
DECLARE FormattedStr CHAR;  
SET Num = 45;
SET FormattedStr = CAST(Num AS CHAR FORMAT '#0%');

可以在 https://www.ibm.com/support/knowledgecenter/en/SSMKHH_9.0.0/com.ibm.etools.mft.doc/ak05615_.htm

找到更多信息