F
ForestGuy
Unregistered / Unconfirmed
GUEST, unregistred user!
在InterBase5.5中的一个存储过程
MyField的类型Char(20)
...
MyParam Char(20)
...
Update MyTable
Set MyField=MyField||:MyParam
...
当MyField的内容为一个表达式时,如'3+5',参数MyParam为'+1'时
InterBase总是先试图将整个表达式计算出来,用以上参数值会得到一个
这样的提示arithmetic exception, numeric overflow, or string truncation.
相反,如果将表达式和字段值写成这样就可以了
MyField为3,MyParam为+1
Set MyField=MyField+:MyParam
如果要是MyField为3+5,则它会提示conversion error from string "3+5 "
在正确执行之后,MyField就变成4了,并不是我所希望的一个表达式3+1
谢谢,请指点一二!
MyField的类型Char(20)
...
MyParam Char(20)
...
Update MyTable
Set MyField=MyField||:MyParam
...
当MyField的内容为一个表达式时,如'3+5',参数MyParam为'+1'时
InterBase总是先试图将整个表达式计算出来,用以上参数值会得到一个
这样的提示arithmetic exception, numeric overflow, or string truncation.
相反,如果将表达式和字段值写成这样就可以了
MyField为3,MyParam为+1
Set MyField=MyField+:MyParam
如果要是MyField为3+5,则它会提示conversion error from string "3+5 "
在正确执行之后,MyField就变成4了,并不是我所希望的一个表达式3+1
谢谢,请指点一二!