我有3个实体相互连接,如下所示:
Quiz
@ManyToOne()
private Quiz quiz;
@ManyToOne()
private QuizQuestions question;
我试图使用quizId删除测验,但我得到了:
无法删除或更新父行:外键约束失败 (
bananpiren
。quizquestions
,CONSTRAINTFK_QUIZQUESTIONS_QUIZ_QUIZID
FOREIGN KEY(QUIZ_QUIZID
)参考quiz
(QUIZID
)) 错误代码:1451
我的猜测是,JPA不喜欢外键,并且与@OneToMany行为不同,Cascading似乎不起作用。
我试过@ManyToOne
我想要发生的是,当用户删除测验时,应删除所有连接的问题和答案。这只能使用JPA和@ManyToOne关系吗?如果可能的话怎么办?
答案 0 :(得分:1)
问题是,您希望级联#!/usr/bin/python
import subprocess
import signal
import time
p=subprocess("adb logcat -v time event")
p_id=p.pid
time.sleep
os.kill(p_pid,signal.SIGINT)
print "bye"
关系,而不是@OneToMany
关系。级联@ManyToOne
关系意味着在您删除测验时删除测验。因此,您需要在@ManyToOne
类上定义相应的@OneToMany
变量,并在那里执行Quiz
以获得所需的效果。