gpt4 book ai didi

grails - 创建表失败

转载 作者:行者123 更新时间:2023-12-05 00:34:54 27 4
gpt4 key购买 nike

我正在使用 H2 数据库来测试我的 Grails 应用程序。我有一些简单的域类,例如:

package mypackage

class UserSession {
User user
String sessionTokenHash

// last seen info
String lastSeenIP
Date lastSeenTime
String lastSeenUserAgent
String lastSeenURL
}

但是,该表似乎没有正确创建。

hbm2ddl.SchemaExport 不成功:创建表 user_session (id bigint not null auto_increment, version bigint not null, last_seenip varchar(255) not null, last_seen_time datetime not null, last_seenurl varchar(255) not null, last_seen_user_agent varchar(255) not null, session_h varchar(255) 不为空,user_id bigint 不为空,主键 (id)) ENGINE=InnoDB
hbm2ddl.SchemaExport SQL 语句中的语法错误“CREATE TABLE USER_SESSION (ID BIGINT NOT NULL AUTO_INCREMENT, VERSION BIGINT NOT NULL, LAST_SEENIP VARCHAR(255) NOT NULL, LAST_SEEN_TIME DATETIME NOT NULL, LAST_SEENURL) LAST_SEENURL VARAGENT_25_USER_AST_USER_LAST_USER_SESSION (ID BIGINT NOT NULL AUTO_INCREMENT, VERSION BIGINT NOT NULL, NOT NULL, SESSION_TOKEN_HASH VARCHAR(255) NOT NULL, USER_ID BIGINT NOT NULL, PRIMARY KEY (ID)) ENGINE=[*]INNODB";预期的“标识符”; SQL语句:
创建表 user_session (id bigint not null auto_increment, version bigint not null, last_seenip varchar(255) not null, last_seen_time datetime not null, last_seenurl varchar(255) not null, last_seen_user_agent varchar(255) not null, session_token_hash varchar(255) not null,user_id bigint 不为 null,主键 (id)) ENGINE=InnoDB [42001-147]

create-drop 中设置为使用临时内存中的 H2 数据库模式。

最佳答案

我使用了错误的方言;我的 DataSource.groovy 在 dataSource 块中设置了以下方言:

dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"

我为开发数据源添加了以下行:
dialect = "org.hibernate.dialect.H2Dialect"

这已经解决了这个问题。

关于grails - 创建表失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10195397/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com