当我在where语句中有“& D”时,我的Oracle查询正在爆炸
select <field> from <table> where field = 'ABC&D';
弹出Oracle Variable窗口,询问以下值:D。
有什么想法吗?
答案 0 :(得分:6)
通过以下方式关闭变量替换:
set define off
然后运行您的查询。 SQL * Plus将&amp; D解释为运行时替换变量。
答案 1 :(得分:4)
如果您不想使用SET
命令,另一个选项是使用连接:
select <field> from <table> where field = 'ABC' || '&' || 'D';