我在一个新的grails项目上有以下设置:
dataSource {
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"
username = "sa"
password = ""
}
environments {
development {
dataSource {
dbCreate = "create-drop" // one of 'create', 'create-drop', 'update', 'validate', ''
url = "jdbc:mysql://localhost/myapp?useUnicode=yes&zeroDateTimeBehavior=convertToNull&characterEncoding=UTF-8"
username = "root"
password = ""
}
}
}当我运行我的应用程序时,它会出现一个错误:Error creating bean with name 'transactionManagerPostProcessor':
当我手动转到数据库并创建一个名为myapp的数据库时,这个错误就消失了。
我认为,如果数据库不存在,create-drop设置在dbCreate中应该创建。
问题
如何配置设置,以便在MySQL中不存在数据库时创建数据库
发布于 2013-10-20 16:31:39
创建数据库本身是不切实际的,因为它非常特定于供应商,甚至比DDL更适合创建表、序列等。您通常需要指定访问规则、存储选项等。
Hibernate将生成并运行schama,但是除了简单的数据库(如H2 )之外,您必须通过创建数据库本身来启动进程。
https://stackoverflow.com/questions/19479704
复制相似问题