2017-02-13 39 views
0

文件:Define_variable.sql如何掃描的代碼只有特定部分在Oracle替換可變

DEFINE schema_name = ms 

文件:insert_data.sql

insert into &schema_name.settings(key,value) values('Email_msg','<html><p>Dear {First_Name}, {Last_Name}</p><p>{End_user_organization_name} has decided to embrace a new technology. Once enrolled, your Android&#8482; or S<sup>&reg;</sup> </html>') 

我需要插入在該值表,但我無法做到。

它要求的價值& reg(在html腳本中)。如果我把掃描,它不是挑選& schema_name,如果我把掃描,它是要求在HTML內的值。有什麼辦法可以做

注意:列值是一個Clob數據並且包含一個大的html模板,爲了示例目的,我只附上了一些html內容。

+0

請幫忙!!!!! –

回答

1

您可以更改要在替換變量中使用的字符;例如:

SQL> set define @ 
SQL> define my_variable=value 
SQL> select '&[email protected]_variable' from dual; 
old 1: select '&[email protected]_variable' from dual 
new 1: select '&my_variable=value' from dual 

'&MY_VARIABLE=VALU 
------------------ 
&my_variable=value 
1

你需要一個額外的.終止替代變量:

insert into &schema_name..settings (key,value) 

替代變量由.可選終止,所以如果你想要一個實際點之後,那麼你需要兩個。

btw scan已被廢棄,只要我記得就廢棄了。使用set define,它還允許您設置不同的前綴字符。