>我在表格中有以下详细信息
GEMS@TEST1>select BUILTIN_ARGUMENTS from FND_FORM_CUSTOM_ACTIONS WHERE (RULE_ID = 2243);
BUILTIN_ARGUMENTS
--------------------------------------------------------------------------------
='http://prod.client.com:3001/ords/f?p=1:2:::NO::P_ORDER_HEADER_ID,P_SESSION
_ID:'||${item.ORDER.HEADER_ID.VALUE}||','||${ps.db_session_id.value}
为了需要,我必须将此"prod.client.com:3001"
更新为
"test1-scan.client.com"
当我在下面执行时出现错误
GEMS@TEST1>update FND_FORM_CUSTOM_ACTIONS set = '='http://test1-scan.client.com/ords/f?p=1:2:::NO::P_ORDER_HEADER_ID,P_SESSION
_ID:'||${item.ORDER.HEADER_ID.VALUE}||','||${ps.db_session_id.value}' WHERE (RULE_ID = 2243);
SP2-0552: Bind variable "NO" not declared.
GEMS@TEST1>
我知道我可能不得不使用转义字符或声明变量,但没有得到线索,因为我不太擅长编码。
在这种情况下使用 REPLACE
更好。
UPDATE fnd_form_custom_actions
SET builtin_arguments = REPLACE (builtin_arguments, 'prod.client.com:3001',
'test1-scan.client.com')
WHERE rule_id = 2243 ;
你的陈述中有明显的错别字:
set = '='http://test1-scan.client.com/ords/f?p=1:2:::NO [.......]
设置什么 = .....?
然后:单引号中的第二个等号是什么?(或...我明白了 - 你的意思是分配的字符串中的单引号吗?您必须输入两个单引号来表示字符串中的一个单引号!
然后:由于第二个等号使用单引号,因此后面的内容不被引用。因此:NO
被视为绑定变量。更正语法,Oracle 不会询问您任何绑定变量。
修复后,看看Kaushik的答案,以获得更好的方法。