运行 jsp 报告后出现以下错误。
查询标签:doAfterBody(),0,位置不支持 SQL92 标记:3477:S
我知道导致问题“{S}”的以下代码段:
…….. AND (L.Applicable_Location_Region_ID IN (N'PARIS2', N'{S}Paris2'))
根据我的调查,我了解到以下内容:Oracle 解析 SQL 并将 "'{S}Paris2" 的文本视为字符串文字,然后找到 {S} 将其视为 SQL 转义序列,但它没有认出。
以下链接很好地解释了“转义字符”: http ://docs.oracle.com/cd/F49540_01/DOC/inter.815/a67843/cqspcl.htm
我们必须使用 {S} 后跟名称。
上面的 AND 语句适用于 SQL Server 和 MySQL,但会导致 Oracle 出现问题,因为“当您使用大括号转义单个字符时,转义的字符将成为查询中的单独标记。”
由于上述原因,应用程序将 {S} 视为转义的带有大括号的单个字符成为查询中的单独标记。
所以请你帮我如何在oracle中用大括号转义单个字符或任何建议。