当前位置: 首页 > 知识库问答 >
问题:

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

端木狐若
2023-03-14

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

select "Job Number", "Job Completed?" from "ORDERS"

给我com.filemaker.jdbc.FMSQLExctive:[FileMaker][FileMaker JDBC]无效的参数绑定。

相信我,我很想改变列名,但是我正在访问一个仍然从另一个系统访问的遗留数据库。感谢任何帮助。

编辑:经过一些实验,我发现只有在使用PreparedStatement时才会发生这种情况。如果我只使用语句。然后我就可以绕过这个问题了。我更愿意使用预先准备好的语句,而不是使用字符串连接构建查询,但至少我可以继续。如果有人知道如何避开问号,我会把这个打开。


共有3个答案

姬自强
2023-03-14

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

吕亮
2023-03-14

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

https://code.google.com/p/prosc-woof/

谭骏
2023-03-14

"从"订单"中选择"作业已完成?"\"";"";"")

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

 类似资料:
  • 问题内容: 我有5个表或表要从\查询 我的语法我喜欢这样 问题是,当我运行此命令时,我收到一条错误消息:“ .....您在SQL WHERE Patient_ID =吗?附近有错误?” 当我使用system.out.println(sql2)输出sql时; 值未在sql2中设置 问题答案: 当您准备一条语句时,数据库将构造一个执行计划,如果表不存在,则该计划无法执行。换句话说,Placehodle

  • 我需要检查执行查询时使用的内存。我已经在MYSQL中将JDBC连接到我的数据库。我也知道如何执行查询。但是我不知道如何检查执行查询时使用的内存。这是为了比较内存和时间。我使用NetBeans。 非常感谢。

  • 问题内容: 我在Python列表中有一堆列名。现在,我需要将该列表用作语句中的列名称。我怎样才能做到这一点? 到目前为止,我有: 问题答案: 您无法传递要选择作为参数的列列表。它应该是您的SQL表达式的一部分,例如: 要注意的一件事是,SQL中参数值的占位符取决于数据库。如果不起作用,请尝试使用或。有关更多详细信息,请参见https://www.python.org/dev/peps/pep-02

  • 问题内容: 我对sql中的别名有疑问和疑问。如果我想在同一查询中使用别名,可以使用它。例如:考虑表名xyz与列a和b 这有可能吗? 问题答案: 您是在谈论给查询中的表达式赋予标识符,然后在查询的其他部分重用该标识符吗? 在Microsoft SQL Server中这是不可能的,而我几乎所有的SQL经验都仅限于此。但是您可以执行以下操作。 显然,该示例并不是特别有用,但是如果您在多个地方使用该表达式

  • 问题内容: 我想以这样的方式串联列名:列名的第一部分是一个字符串,第二部分是一个数字,这是另一个查询的结果。 例如: 能以某种方式做到这一点。这样,它不会给我带来错误,但是我没有得到预期的结果,并且似乎串联不起作用。 问题答案: 我之前曾说过无法做到这一点,但是我错了。我本人最终需要这样的东西,所以我环顾四周,发现服务器端准备好的语句使您可以从字符串构建和执行任意SQL语句。 这是我只是为了证明这

  • 问题内容: 查询代码和查询: 返回一个空值。 通过基本调试,我发现了它的第三个绑定,即问题 我尝试了各种变体,其中最明智的似乎是在使用: 但这不起作用,因为我错过了连接字符串的任一侧,所以我尝试: 但我似乎无法找到一种方法使它们起作用。 我想念什么? 问题答案: 首先,占位符(那些占位符)仅用于 列值 ,而不用于表名,列名,SQL函数/子句等。最好改用。其次,你应该 不 引用占位符一样,它只会ma