3

我正在使用 JDBC 从文件制作服务器 v12 中获取数据。

由于某些未知原因,filemaker 允许您在表名中包含空格。我无法选择这些表,因为我刚刚收到语法错误。

我用java编写了一个应用程序来获取数据。有谁知道我如何从带有空格的表中选择数据?

编辑(来自OP的评论):

这是Java部分:

String selectSQL = "SELECT "+this.getImportableColumnsString()+" FROM "+this.getTableName();
PreparedStatement preparedStatement = this.connection.prepareStatement(selectSQL);
ResultSet rs = preparedStatement.executeQuery();
4

3 回答 3

3

如对该问题的评论中所述,如果 FileMaker 表名包含空格,则必须在 SQL 语句中将其括在双引号中,例如,

String selectSQL = "SELECT * FROM \"table name\"";
于 2014-01-14T18:45:58.997 回答
0

我的第一个想法是您可以将表名放在 ' 字符中,例如:SELECT * FROM 'my table'。这不起作用吗?

否则,我建议您在此页面上联系 Filemaker Server 支持: http ://help.filemaker.com/app/ask 他们可能以前有过这个问题并且知道如何构建查询。

//翻转

于 2013-05-14T21:04:29.990 回答
0

我很确定在 OCDB 和 JDBC 支持的文档中 FileMaker 说表可能必须遵守比 FileMaker 允许的更严格的命名约定。如果您对所采购的数据库具有管理员访问权限,那么在 FileMaker 中更改表名很容易,为什么不直接将表名中的空格替换为下划线。

于 2013-05-15T14:33:09.717 回答