Привет, я пытаюсь сделать что-то очень простое с доменным классом Grails. Я добавляю в свой класс поле и хочу использовать плагин переноса данных для отката один раз, чтобы добавленное поле было удалено.
Сначала я создал первоначальный журнал изменений следующим образом:
Grails dbm-generate-changelogchangelog.groovy
Затем я добавил в файл Config.groovy следующее:
grails.plugin.databasemigration.updateOnStart = true grails.plugin.databasemigration.updateOnStartFileNames = ['changelog.groovy']
Затем я добавил дополнительное поле в свой класс домена и выполнил следующее:
grails dbm-gorm-diff добавлено-новое-поле.groovy --добавить
Я запустил приложение (grails run-app), после чего выполнил:
Grails dbm-rollback-count 1
После чего я снова запускаю приложение, используя: grails run-app, но поле все еще там.
Я использую MySQL для БД. Вот как я это настроил в DataSource.groovy:
dataSource {
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"
}
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = false
cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
}
// environment specific settings
environments {
development {
dataSource {
dbCreate = 'update'
url = "jdbc:mysql://localhost/dashboard?useUnicode=yes&characterEncoding=UTF-8"
username ="foo"
password = "bar"
}
}
..... and on.....
Может ли кто-нибудь объяснить мне, как выполняется откат? Я использую: миграция базы данных Grails 2.2.2: 1.3.2
dbCreate = ''
- person Kamil Mikolajczyk   schedule 17.06.2013