Oracle11g ORA-00911:通过ODBC的无效字符,临时SQL-在注释中?

Oracle11g ORA-00911:通过ODBC的无效字符,临时SQL-在注释中?,oracle11g,Oracle11g,当执行以下语句(作为示例)时,我得到一个错误ORA-00911:无效字符 "/* it is the end of the world */\nSELECT 1 FROM MyTable;" 其他评论也可以。有什么问题吗 我们使用注释来注释我们的特殊SQL (Oracle11gR2,Windows) 这不是通过SQL Plus或SQL Developer实现的。如果注释包含整个单词end,则Oracle驱动程序(或服务器)似乎对这一点的解释很糟糕。 如果删除注释中的end单词,则语句将正确执行

当执行以下语句(作为示例)时,我得到一个错误
ORA-00911:无效字符

"/* it is the end of the world */\nSELECT 1 FROM MyTable;"
其他评论也可以。有什么问题吗

我们使用注释来注释我们的特殊SQL

(Oracle11gR2,Windows)


这不是通过SQL Plus或SQL Developer实现的。

如果注释包含整个单词
end
,则Oracle驱动程序(或服务器)似乎对这一点的解释很糟糕。 如果删除注释中的
end
单词,则语句将正确执行

我认为这是因为它不希望在遇到“end”指令后出现分号(即使它不应该解析注释)

下面的语句执行时不发出,返回7

/* end */\nSELECT 7 FROM MyTable 
下面的语句提出了ORA-00911

/* end */\nSELECT 6 FROM MyTable;
下面的语句返回5

/**/\nSELECT 5 FROM MyTable;
Oracle很可能会解析注释,因为这就是它应用连接操作/优化“提示”的方式