我做了一个有更多关系的小应用程序。现在我想删除我的表的详细信息我该如何删除我没有任何要删除的想法。
关系如下:
泛卡-->员工(一对一)
员工-->项目经理(与员工双向多对一关联)
项目-->项目经理(与项目的双向多对一关联)
现在我想把表数据一一删除
下面是我的 POJO 类代码:
PanCard.java
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="pName")
private String pName;
@Column(name="pNumber")
private int pNumber;
@OneToOne(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
@JoinColumn(name="EId")
private Employee employee;
员工.java
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name = "id")
private int id;
@Column(name = "empFirstName")
private String empFirstName;
@Column(name = "empLastName")
private String empLastName;
@Column(name = "empDepartment")
private String empDepartment;
@ManyToOne(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
@JoinColumn(name="pmId")
private ProjectManager projectManager;
项目管理器.java
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
private String department;
private String managerFirstName;
private String managerLastName;
//bi-directional many-to-one association to Myemployee
@OneToMany(mappedBy="projectManager",cascade = CascadeType.ALL)
private List<Employee> employee;
@OneToMany(mappedBy="projectManager",cascade = CascadeType.ALL)
private List<Projects> projects;
项目.java
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="projectName")
private String projectName;
@Column(name="projectDesc")
private String projectDesc;
@ManyToOne(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
@JoinColumn(name="pmId")
private ProjectManager projectManager;
现在我想删除表数据:我应该从哪个表开始删除。
- 如果我想删除
Pancard
我应该删除ProjectManager
因为Employee
有FK。
- 如果我想删除
ProjectManager
它应该删除Employee
and Projects
but Employee
有关系与PanCard
所以并不是删除。
- 如果我想删除
Projects
它应该删除ProjectManager
but ProjectManger
有关系与Employee
所以并不是删除。
所以我必须从哪里开始删除以及如何删除我不知道。