1

我正在尝试为 Grails 中的学校项目制作一个简单的 Web 应用程序。我可以访问服务器、保存、删除和其他所有操作,但每当我第一次运行该应用程序时,我都会收到大量 SQL 错误。我正在使用 Grails 2.0.3 和 mysql-connector-java-5.1.19。

我收到以下错误,许多其他人喜欢它:

错误 2012-04-25 14:28:54,009 [pool-5-thread-1] 错误 hbm2ddl.SchemaUpdate - 不成功:更改表 character_trait 添加索引 FK93D74D785F2F8048 (character_traits_id),添加约束 FK93D74D785F2F8048 外键 (character_traits_id) 引用字符 (id)

错误 2012-04-25 14:28:54,009 [pool-5-thread-1] 错误 hbm2ddl.SchemaUpdate - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“字符(id)”附近使用正确的语法

并且在使用 findby 动态查找器进行查询时:

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException 类

消息您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“character this_ where this_.player_id=1 limit 1”附近使用正确的语法

关于为什么会发生这种情况的任何想法?

4

1 回答 1

1

CHARACTER是 MySQL 中的保留字。它需要被引用以用作表或列名。您可以像这样在表映射中引用它:

class Character {
    static mapping = {
        table name: '`character`'
    }
}
于 2012-04-25T20:33:54.893 回答