相关疑难解决方法(0)

无法在PostgreSQL中创建名为"user"的数据库表

似乎PostgreSQL不允许创建名为"user"的数据库表.但MySQL将允许创建这样的表.

那是因为它是关键词吗?但是Hibernate无法识别任何问题(即使我们设置了PostgreSQLDialect).

postgresql hibernate reserved-words identifier

70
推荐指数
5
解决办法
4万
查看次数

通过 JDBC 语句执行 DDL“更改表分数添加约束外键(enrollment_id)引用注册(id)”时出错

我有一个注册课程,其中有分数列表。我试图引用 Score 类,但得到以下结果:

通过 JDBC 语句执行 DDL“更改表分数添加约束...外键(enrollment_id)引用注册(id)”时出错 原因:java.sql.SQLException:无法打开引用的表“注册”

运行应用程序后,在数据库中创建了 Score 表,但缺少 Enrollment 表,并且 Score 的 enrollment_id 列不是外键。

我怎么解决这个问题?我尝试用 @Cache 进行注释并忽略表的双重创建,但没有成功。我正在使用MySQL。

@Entity
@Table(name = "enrollment")
public class Enrollment {
    
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public int id;
    
    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "student_id")
    public Student student;
    
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "date", nullable = false)
    public Date date;

    @Column(name = "rank", nullable = false)
    public int rank;
    
    @OneToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "specialty_id", referencedColumnName = "id")
    public Specialty specialty;
    
    @Lob
    @Basic(fetch = FetchType.LAZY) …
Run Code Online (Sandbox Code Playgroud)

java spring jpa foreign-keys

2
推荐指数
1
解决办法
1万
查看次数

使用MYSQL 8通过JDBC语句执行DDL时出错

我在代码中遇到了一些麻烦。我一直在尝试此网站上所有可能的解决方案,但没有任何效果。我似乎无法理解可能是什么问题。

我尝试过的解决方案的链接:

Spring Boot,JPA错误:“通过JDBC语句执行DDL错误”

通过JDBC语句执行DDL的休眠错误

系统配置:Ubuntu 16.04 MySQL 8

    2018-11-06 12:38:52.273  INFO 16491 --- [           main] org.hibernate.dialect.Dialect            : HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
Hibernate: create table outputmessages (id integer not null, from varchar(255), message varchar(255), time datetime, topic varchar(255), primary key (id)) engine=InnoDB
2018-11-06 12:38:53.117  WARN 16491 --- [           main] o.h.t.s.i.ExceptionHandlerLoggedImpl     : GenerationTarget encountered exception accepting command : Error executing DDL via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL via JDBC Statement
    at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) ~[hibernate-core-5.2.17.Final.jar:5.2.17.Final]
    at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlString(AbstractSchemaMigrator.java:559) [hibernate-core-5.2.17.Final.jar:5.2.17.Final]
    at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlStrings(AbstractSchemaMigrator.java:504) [hibernate-core-5.2.17.Final.jar:5.2.17.Final]
    at …
Run Code Online (Sandbox Code Playgroud)

java mysql spring entitymanager

0
推荐指数
1
解决办法
2299
查看次数