gpt4 book ai didi

mysql - GenerationType 和 MySQL 错误

转载 作者:行者123 更新时间:2023-11-29 13:43:51 25 4
gpt4 key购买 nike

我有一个网络表单,用户可以在其中插入数据。然后还有存储在数据库中。但我在数据库记录中遇到了问题。我使用 spring 3、jpa、eclipselink 和 mysql。在实体中生成@Id。当我使用策略:GenerationType.AUTO时,GenerationType.TABLE数据未存储并错误:
异常 [EclipseLink-4002](Eclipse 持久性服务 - 2.5.0.v20130507-3faac2b):org.eclipse.persistence.exceptions.DatabaseException内部异常:java.sql.SQLException:未找到基表或 View ,来自服务器的消息:“表'sklep.sequence'不存在”错误代码:1146调用: UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?bind => [绑定(bind) 2 个参数]
当使用 GenerationType.IDENTITY、GenerationType.SEQUENCE 时,仅存储第一个数据,然后: javax.persistence.PersistenceException:异常 [EclipseLink-4002](Eclipse 持久性服务 - 2.5.0.v20130507-3faac2b):org.eclipse.persistence.exceptions.DatabaseException内部异常:java.sql.SQLException:null,来自服务器的消息:“键‘PRIMARY’的重复条目‘0’”错误代码:1062
到底是怎么回事?这是mysql的问题还是什么的?帮助!谢谢!

最佳答案

使用 TABLE id 生成时,需要创建表 SEQUENCE。如果您使用 EclipseLink 生成 DDL,它将为您创建。您还需要为每个生成器名称插入一行。

对于 IDENTITY ID 生成,您需要在创建表时为 ID 使用 IDENTITY 类型。

看, http://en.wikibooks.org/wiki/Java_Persistence/Identity_and_Sequencing#Sequencing

关于mysql - GenerationType 和 MySQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17720720/

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