Grails 3.0.9
uygulamasında, birbirleriyle many-to-many
ilişkisi olan birden çok etki alanı sınıfım var. Ben veritabanından tüm varlıkları silmek istediğinizde bir hata söyleyerek olsun:Yabancı anahtar kısıtlaması yok sayılırken, tüm varlıkları gorm ile veritabanından silme
org.springframework.dao.DataIntegrityViolationException: Hibernate operation: could not execute statement; SQL [n/a]; Cannot delete or update a parent row: a foreign key constraint fails (`database`.`figure`, CONSTRAINT `FK_dbgwxhc7ggggypvmf967wvgfw` FOREIGN KEY (`fig_other_table_id`) REFERENCES `other_table` (`id`)); nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`database`.`figure`, CONSTRAINT `FK_dbgwxhc7ggggypvmf967wvgfw` FOREIGN KEY (`fig_other_table_id`) REFERENCES `other_table` (`id`))
bu kez yabancı anahtar contraints görmezden GORM
kullanarak bir yolu var mı?
: GORM docs yılında descriped gibi
static mapping = {
figOtherTable cascade: 'all-delete-orphan'
}
, ama bu benim için çalışmıyor (veya bir şey eksik).
Sana yürüterek yabancı anahtar kısıtlamaları görmezden MySQL söyleyebilirim here okudum:
SET FOREIGN_KEY_CHECKS = 0
Gorm ile bunu bir yolu var mı?