स्प्रिंग बूट पर आधारित इस समस्या को हल करने के लिए मैंने यही किया।
समाधान
से
// application.properties
spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
करने के लिए
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
स्पष्टीकरण
जैसा कि आप नीचे देख सकते हैं, ऐसा लगता है कि MySQL5InnoDBdialect.java पर CascadeDelete के लिए डिफ़ॉल्ट मान केवल Cascade का समर्थन करता है।
// MySQLDialect.java
@Override
public boolean supportsCascadeDelete() {
return false;
}
// MySQL5InnoDBDialect.java
@Override
public boolean supportsCascadeDelete() {
return true;
}