Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用JDBC在列名中使用问号的Filemaker SQL查询_Java_Sql_Jdbc_Odbc_Filemaker - Fatal编程技术网

Java 使用JDBC在列名中使用问号的Filemaker SQL查询

Java 使用JDBC在列名中使用问号的Filemaker SQL查询,java,sql,jdbc,odbc,filemaker,Java,Sql,Jdbc,Odbc,Filemaker,我试图使用JDBC从Filemaker中选择一个列,该列中有一个特殊字符。我看到过其他文章中有空格或其他特殊字符,并尝试引用我的专栏文章,但问号带来了另一个纠结,因为JDBC驱动程序似乎试图绑定到它 select "Job Number", "Job Completed?" from "ORDERS" 给我com.filemaker.jdbc.FMSQLException:[filemaker][filemaker jdbc]无效的参数绑定。 相信我,我很想更改列名,但我遇到的是一个遗留数据库

我试图使用JDBC从Filemaker中选择一个列,该列中有一个特殊字符。我看到过其他文章中有空格或其他特殊字符,并尝试引用我的专栏文章,但问号带来了另一个纠结,因为JDBC驱动程序似乎试图绑定到它

select "Job Number", "Job Completed?" from "ORDERS"
给我
com.filemaker.jdbc.FMSQLException:[filemaker][filemaker jdbc]无效的参数绑定。

相信我,我很想更改列名,但我遇到的是一个遗留数据库,它仍在从另一个系统访问。感谢您的帮助

编辑:经过一些实验,我发现只有在使用PreparedStatement时才会发生这种情况。如果我只使用Statement.executeQuery(sql),那么我就可以绕过这个问题。我更愿意使用准备好的语句,而不是使用字符串连接来构建查询,但至少我可以继续前进。如果有人知道如何避开问号,则此选项将保持打开状态。

ExecuteSQL(“从“订单”中选择“作业已完成”)


没有仔细阅读。问题是关于JDBC…

我是WooF的作者之一,WooF是我们为FileMaker编写的JDBC驱动程序,它通过XML发布引擎运行。我还没有测试过这个,但我怀疑它可以很好地处理命名奇怪的字段和准备好的语句。如果没有,请提交一份bug报告,它应该很快得到修复


经过一些实验,我发现只有在使用PreparedStatement时才会发生这种情况。如果我只使用Statement.executeQuery(sql),那么我就可以绕过这个问题。我更愿意使用准备好的语句,而不是使用字符串连接来构建查询,但至少我可以继续前进。如果有人知道如何避开问号,我会把这个打开