Jakarta ee 查询返回的SQL异常

Jakarta ee 查询返回的SQL异常,jakarta-ee,oracle11g,Jakarta Ee,Oracle11g,我使用的是oracle SQL developer,我正在java web应用程序中编写一个查询,但它返回一个异常 java.sql.SQLSyntaxErrorException: ORA-00911: invalid character at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)

我使用的是oracle SQL developer,我正在java web应用程序中编写一个查询,但它返回一个异常

java.sql.SQLSyntaxErrorException: ORA-00911: invalid character at
oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447) at
oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) at
oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951) 
我的问题是:

String query = "select firstname, lastname from members where sex='"+gender +"' and marital='"+marital_status+"';";
其中,性别和婚姻是表中的列,性别和婚姻状况是输入字符串

删除分号;从您的查询字符串中,如下所示

String query = "select firstname, lastname from members 
where sex='"+gender +"' and marital='"+marital_status+"';";
                                                        <--this one

异常详细信息是什么?由于您说我使用的是oracle SQL developer而编辑。正确选择标记。@Rahul SQL语法错误您可以发布整个错误吗。我觉得您发布的查询很好。java.sql.SQLSyntaxErrorException:ORA-00911:oracle.jdbc.driver.t4cttiore.ProcessErrort4cttiore.java:447在oracle.jdbc.driver.T4C8Oall.java:396在oracle.jdbc.driver.T4C8Oall.java:951,直到得到相同的异常:奇怪!如果您使用硬编码的值运行,比如String query=select firstname,lastname from members,其中sex='male'和mutually='single';?最后一项建议;在代码中打印查询并查看字符串查询是如何使用变量值形成的。我无法理解最后的建议。。Sorry我的意思是在字符串查询中使用echo/println来查看它在运行时的值。
String query = "select firstname, lastname from members where sex='"+gender +"' and marital='"+marital_status+"'";