当前位置: 首页 > 知识库问答 >
问题:

spring boot无法在mysql数据库中生成表

穆文斌
2023-03-14

我试图从defiend JpaEntities更新数据库模式,但spring boot无法生成数据库表。日志文件:

application.properties文件:

spring.datasource.url= jdbc:mysql://localhost:3306/banque_db
spring.datasource.username= root
spring.datasource.password=
spring.datasource.driver-class-name= com.mysql.cj.jdbc.Driver
spring.jpa.hibernate.ddl-auto= update
spring.jpa.show-sql= true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

客户端实体类:

 @Entity(name="client")
public class Client implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long code;
private String name;
private String email;
@OneToMany(mappedBy = "compte")
private Collection<Compte> comptes;
// + getters and setters

pom.xml

<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.0.release com.tuto

<artifactId>MaBanque</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>MaBanque</name>
<description>Demo project for Spring Boot</description>

<properties>
    <java.version>1.8</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>       
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>       
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

null

共有2个答案

堵睿范
2023-03-14

您必须设置spring.jpa.hibernate.ddl-auto=create用于数据库创建或create-drop

请参阅文档了解更多详细信息。

叶允晨
2023-03-14

实际上,问题是实体类不在正确的一揽子计划中。org.example中包含主类和org.entities由于某种原因,spring boot没有生成表,所以当我移动实体包变成像org.example.entities一样运行应用程序时,所有的表都成功生成了。谢谢你们的帮助,我承认:)

 类似资料:
  • 我想用springboot项目生成MySQL数据库。我创建了一个maven项目,这是pom.xml:

  • 我有一个Spring Boot应用程序,我在Docker容器中创建了一个PostgreSql数据库。我可以使用工具连接到该数据库,但当我运行Spring Boot应用程序时,即使在调试屏幕上看到以下日志,它也无法创建表: Hibernate:删除表,如果存在public.employees级联 Hibernate:创建表public.employees(id bigSeries not null,

  • 我正在尝试从Spring Boot应用程序连接到mySQL数据库。然而,当我试图运行它时,它显示出错误。 我如何解决这个问题? 错误 从我的文件中添加代码片段 pom。xml 应用属性 堆栈跟踪 我还没有在sql中手动创建表,因为我认为spring.jpa.hibernate.ddl-Auto=date应该这样做

  • 根本原因 com.mysql.jdbc.exceptions.mysqlSyntaxerRoreXception:用户“@'localhost”对数据库“mysqluser=root”的访问被拒绝 注意:GlassFish Server Open Source Edition 4.0日志中提供了异常及其根本原因的完整堆栈跟踪。GlassFish服务器开源4.0版 我的数据库没有任何密码。我是通过以

  • 我设法将我的应用程序与HSQLDB连接起来,并使其运行良好。然而,我在将它连接到MySQL时遇到了一些麻烦。 下面是我的堆栈跟踪: 应用程序运行失败 null 我的pom.xml文件: null 这里是我的application.properties文件: 如果我没有错的话,我将MySQL用户配置为与我在ubuntu中的系统用户相同,这样我就可以用“mysql-u thalysmg”启动MySQL

  • 我想用mysql服务器中的这些信息创建一个名为dni的表。 失败的查询: 1.“创建表dni(id bigint not null,apellidos varchar(255),codigo_dni varchar(255),direccion varchar(255),fecha_nacimiento varchar(255),foto_perfil varchar(255),nombre va