Jos*_*shL 98 sql oracle sqlplus
我有一个SQL脚本,它创建一个包含带符号(&)的注释的包.当我从SQL Plus运行脚本时,系统会提示我输入以&开头的字符串的替换值.如何禁用此功能以便SQL Plus忽略&符号?
Aus*_*nen 171
这可能对你有用:
set define off
Run Code Online (Sandbox Code Playgroud)
否则,&符需要在字符串的末尾,
'StackOverflow &' || ' you'
Run Code Online (Sandbox Code Playgroud)
编辑:保存时我点击了快乐...这是从博客中引用的.
Cau*_*uca 11
我解决了下面的代码:
set escape on
Run Code Online (Sandbox Code Playgroud)
并在旁边和左边放一个\ 'value_\&_intert'
ATT
您可以通过使用,将执行脚本时查找的特殊字符设置为另一个值 SET DEFINE <1_CHARACTER>
默认情况下,DEFINE函数本身已打开,并且设置为&
它可以被关闭 - 如前所述 - 但也可以通过将其设置为不同的值来避免.要非常清楚你设置的标志.在下面的例子中,我选择了#字符,但这个选择只是一个例子.
SQL> select '&var_ampersand #var_hash' from dual;
Enter value for var_ampersand: a value
'AVALUE#VAR_HASH'
-----------------
a value #var_hash
SQL> set define #
SQL> r
1* select '&var_ampersand #var_hash' from dual
Enter value for var_hash: another value
'&VAR_AMPERSANDANOTHERVALUE'
----------------------------
&var_ampersand another value
SQL>
Run Code Online (Sandbox Code Playgroud)
小智 5
set Define off <- 这是我找到的最好的解决方案
我也尝试过...
设置定义}
我能够插入多个包含与号字符“&”的记录,但我无法在文本中使用“}”字符,因此我决定使用“set Define off”,一切都按预期工作。
| 归档时间: |
|
| 查看次数: |
164163 次 |
| 最近记录: |