Oracle中如何查询特殊字符“&”?

问题描述 投票:0回答:1

我在 Oracle 中尝试了以下查询,它不断出现,并且输入框中显示“输入值:”。即使当它更改为“%Hair & Beauty%”时,它仍然存在相同的问题。有什么建议么?谢谢

选择* 来自产品 在哪里 Product_type LIKE '%Hair & Beauty%'

有什么建议谢谢

oracle character
1个回答
0
投票

您在 Oracle 查询中遇到的问题可能是由于 & 字符在 Oracle SQLPlus 中被解释为替换变量。这是一种常见行为,如果 SQLPlus 在查询中遇到与号 (&),则会提示输入。

要解决此问题,您有几个选择:

选项 1:禁用替换变量

您可以使用 SET DEFINE OFF 命令禁用 SQLPlus 中的替换变量功能。这将阻止 SQLPlus 将 & 字符解释为替换变量。

SET DEFINE OFF;
SELECT * FROM Product WHERE Product_type LIKE '%Hair & Beauty%';

选项 2:避开 & 符号

您可以使用双与号 (&&) 来转义 & 字符。

SELECT * FROM Product WHERE Product_type LIKE '%Hair && Beauty%';

选项3:使用不同的字符进行替换

您可以使用 SET DEFINE 命令将用于替换变量的字符更改为其他字符(例如 #)。

SET DEFINE '#';
SELECT * FROM Product WHERE Product_type LIKE '%Hair & Beauty%';

根据您的偏好或环境的具体限制选择这些方法之一。如果您使用的其他工具或环境不将 & 解释为替换变量,则可能不会出现此问题。

© www.soinside.com 2019 - 2024. All rights reserved.