如果我要在查询中预先定义我想要的更改,我的代码就可以工作,但我希望用户提供他自己的输入,以便他可以根据用户输入更改任何特定的 XML 列。
我的问题是它给了我错误,它没有识别我声明的变量 NEWADD。这是我的代码:
CREATE PROCEDURE MNI_UPDATE_STUD_ADD( in IDNUMBER CHAR(8),
in NEWADD VARCHAR(50))
DYNAMIC RESULT SETS 1
LANGUAGE SQL
begin
UPDATE XML_STUD
SET STUDINFO = xmlquery('copy $test := $STUDINFO modify do
replace value of $test/Student/Address with NEWADD
return $test')
WHERE IDNO = IDNUMBER;
end
我希望用户可以在变量 NEWADD 下输入他想要的任何世界,我对变量 IDNUMBER 没有任何问题,我唯一的问题是 NEWADD。有没有办法在 xmlquery 中调用变量?提前致谢。