2016-03-24 11 views
0

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ı?

Böyle silmek basamakla alanı sınıfında Gorm anlatmaya çalıştı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ı?

cevap

İlgili konular