@Entity
@Table(name = "GOAL")
@NamedQuery(name = "get_goal",
query = "SELECT goal FROM Goal goal ")
public class Goal {
/** The strategic_ goal_ key. */
@Column(name = "GOAL_KEY")
private String Goal_Key;
/** The strategic_ goal_ name. */
@Column(name = "GOAL_NM")
private String strategic_Goal_Name;
/** The client initiatives. */
@ManyToMany
@JoinTable(name = "goal_initiative", joinColumns = { @JoinColumn(name = "Goal_Key") }, inverseJoinColumns = { @JoinColumn(name = "initiative_Key") })
List<ClientInitiative> initiative = new ArrayList<ClientInitiative>();
/**
* The Class ClientInitiative.
*/
@Entity
@Table(name = "INIITATIVE")
public class ClientInitiative {
/** The initiative_ key. */
@Column(name = "INITIATIVE_KEY")
private String initiative_Key;
/** The initiative_Key_Name. */
@Column(name = "INITIATIVE_KEY_NM")
private String initiative_Key_Name;
@ManyToMany(mappedBy="clientInitiative")
List<StrategicGoal> strategicGoals = new ArrayList<StrategicGoal>();
@Repository
public class GoalDAOImpl extends BaseDaoImpl{
@Override
@NamedQueryTarget("get_goal")
public List<Goal> getGoals(String planUnitKey) {
List<Goal> goals = null;
try {
goals = (List<Goal>) getEntityManager()
.createNamedQuery("get_goal").getResultList();
return strategicGoals;
} catch (NoResultException noResult) {
return null;
}
}
" Persistence.PersistenceException"
persistenceException:DB2 SQL错误:sqlcode=-206,sqlstate=42703,sqlerrmc=t0.id,driver=3.52.95{prepstmnt 1029586270
SELECT t0.id, t0.GOAL_KEY, t0.GOAL_NM
FROM CGSP.GOAL t0
如果您查找错误代码,您将发现以下内容
在你的情况下,这是第一点。列id不是目标表的列。这就是问题所在。
1. 前言 本节课,咱们一起继续聊聊多对多关联映射。通过本节课程,你将了解到: 多对多关联映射的实现; 双向多对多关联映射的实现。 2. 多对多关联映射 首先了解表中的多对多关系,学生表中的数据和课程表中的数据就存在多对多关系。 一名学生可以选修多门课程,一门课程可以供多名学生选修。 数据库通过主外键的机制描述表中的数据之间的关系。对于存在多对多关系的数据表,借助于中间表,分拆成两个一对多(或者多
问题内容: 我正在开发一个处理以下两个实体的应用程序: 产品 (将其命名为X,Y,Z)和 材料 (a,b,c,…)。众所周知,每种产品都有一个配方,指示制造该产品所需的材料。例如,要产生一个X,我们需要2 a,6 c和4 d(X = 2a + 6c + 4d)。 这就是它在数据库表中的反映方式: 第三张表中的“计数”字段是同类材料(本例中为2、6、4)的系数。 所以我想以这种方式编写Product
问题内容: 我使用带有注释的Hibernate 3.5.2-FINAL来指定我的持久性映射。我正在努力对应用程序和一组平台之间的关系进行建模。每个应用程序都可用于一组平台。 从我完成的所有阅读和搜索中,我认为我需要让平台枚举类作为Entity持久化,并需要一个联接表来表示多对多关系。我希望该关系在对象级别是单向的,也就是说,我希望能够获得给定应用程序的平台列表,但是我不需要找出给定平台的应用程序列
1. 前言 通过本节课程的学习,你将发现关联对象之间的微妙关系。相信这种关系对你更深入地认识 HIbernate 有很大的帮助。 通过本节课程,你将了解到: 多对多双向关联映射中哪一方是关系维系者; 级联操作与关系维系者。 2. 关系维系者 新学期开始了,同学们选择了各自喜欢的课程,现在为学生添加选修课程的任务就要落在 Hibernate 的身上。一起来看看 Hibernate 是如何完成这个任务
有两张数据表,通过第三张数据表来表示关联关系,我们称之为多对多的映射 如上图,通过一个中间数据表的两个字段,分别指向两个对象的主键,可以实现多对多映射。所以,Pet.foods(一个 List<Food>) 或者 Food.pets(一个List<Pet>)就是多对多映射。 在 POJO 中配置多对多映射 在 POJO 类中字段中增加注解 @ManyMany: @Table("t_food")
下面的映射给出的错误为 从db.karateInvoiceDetail引用db.karateInvoice的外键的列数错误。应为1 想法是有一个表,它的组合键为(id、fiscalyear和companyId),而表的组合键为(seqNo、InvoiceId、InvoiceFiscalYear和InvoiceCompanyId)。