我目前正在使用 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 错误。有谁知道这样做的正确方法?