【发布时间】:2016-01-28 07:18:09
【问题描述】:
我们正在处理核心 java 代码中的 sybase 数据库。我们使用org.eobjects.metamodel.DataContext 来解析查询。
String sCol[]=table.getColumnNames();
Query query=dataContext.query().from(table.getName()).select(sCol).toQuery();
return new QueryIterator(dataContext.executeQuery(query).iterator());
但它执行查询。相同的代码可以在 Oracle 数据库中正常工作以解析和执行查询。
生成的一些查询示例是:
- 从 ownername.City 中选择 City.CityName
- 从城市中选择 City.CityName
- 从 ownername.City 中选择 CityName
- 从城市中选择 CityName
- 从 ownername.City 中选择 ownername.City.CityName
- 从所有者名称中选择“城市”。“城市名称”。“城市”
- 从 ownername.City 中选择 *
以上查询均未执行。 我们遇到了这些错误:
- 无法解析 FROM 令牌:“ownername”.“City”
- 无法执行查询:列前缀“City”与查询中使用的表名或别名不匹配。该表未在 FROM 子句中指定,或者它具有必须使用的相关名称。
- 无法解析 SELECT 令牌:ownername.City.CityName
我们如何使用元模型和 SYBASE 数据库执行查询,或者有没有其他方法可以执行 sybase 查询?
【问题讨论】:
标签: java datacontext sap-ase apache-metamodel