【发布时间】:2012-03-12 19:20:52
【问题描述】:
可能重复:
In Java, is there a way to write a string literal without having to escape quotes?
我想通过 sql 查询获取 Oracle 开始时间。我使用这个 SQL 语句
SQL_Statement = "select to_char(startup_time, 'HH24:MI DD-MON-YY') "Startup time" from v$instance";
当我尝试使用此 SQL 语句编写代码时,引号出现问题。编写此 SQL 语句的正确方法是什么?
最好的祝福
P.S 我使用 Java。当我尝试运行这个 SQL 查询时:
select to_char(startup_time, 'HH24:MI DD-MON-YY') 'Startup time' from v$instance
我收到此错误:
Error starting at line 1 in command:
select to_char(startup_time, 'HH24:MI DD-MON-YY') 'Startup time' from v$instance
Error at Command Line:1 Column:50
Error report:
SQL Error: ORA-00923: FROM keyword not found where expected
00923. 00000 - "FROM keyword not found where expected"
*Cause:
*Action:
【问题讨论】:
-
尝试用单引号替换字符串中的双引号。您无意中关闭了 SQL 查询字符串。
-
另外,下次请展示更多的研究成果。在 google 或 stackoverflow 上进行简单的搜索就会用相同的答案淹没您的浏览器。
-
@user1103606 - 您使用什么语言与数据库交互?该语言将有一些方法可以在字符串中转义双引号。我的猜测是在嵌入的双引号之前使用单个 `` 会起作用,但这是在不知道您使用的语言的情况下的猜测。