【发布时间】:2009-05-29 08:39:54
【问题描述】:
我目前正在使用 versant 对象数据库(使用 jvi),并且有一种情况需要根据对象 id 查询数据库。
问题是我正在使用杆位框架在数据库上运行一些性能测试,并且该框架中的一项测试要求我使用对象引用或低级对象 ID 从数据库中获取对象.因此,不允许我引用员工对象中的特定字段,但必须对整个对象执行查询。所以,不允许我去“select * from Employee e where e.id = 4”,我需要它来使用整个对象。
我想要达到的目标是
员工employee = new Employee("泡菜先生"); session.commit(); FundVQLQuery q = 新 FundVQLQuery(会话, "select * from Employee employee where employee = $1"); q.bind(员工); q.execute();但是,这会引发 EVJ_NOT_A_VALID_KEY_TYPE 错误。有谁知道这样做的正确方法吗?
【问题讨论】:
-
你发现了哪些困难的事情?这是 Java 还是 C++?
-
这是java。我发现我试图实现这一目标的方式是错误的,因为我得到了一个 EVJ_NOT_A_VALID_KEY_TYPE,这意味着我无法将参数绑定到类型为雇员的对象。
标签: versant-vod