java - spring.jpa.hibernate.ddl-auto = update mariadb无法自动创建数据库索引或外键或列

标签 java jpa gradle spring-boot create-table

1.spring boot

spring-boot-gradle-plugin:1.4.2.RELEASE

2.gradle
 dependencies {
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-web')
    testCompile('org.springframework.boot:spring-boot-starter-test')
    compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '1.1.8'
}

3.application.properties
spring.jpa.hibernate.ddl-auto=update

4.实体
    @Entity public class Users { @Id
    private int id;

    @Column(nullable = false,unique = true)
    private int userId;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }
}

Hibernate无法自动创建数据库索引或外键或约束或添加列

但当
spring-boot-gradle-plugin:1.2.4.RELEASE

一切正常

怎么解决

最佳答案

发现问题,mariadb版本太低

compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '1.1.8'

改成
compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '1.5.6'

一切都好 !

关于java - spring.jpa.hibernate.ddl-auto = update mariadb无法自动创建数据库索引或外键或列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41236029/

相关文章:

java - 如何从 XML 生成 Java 对象?

java - 程序类型已存在 : retrofit2. Converter$Factory Retrofit 编译错误

java - Java do while 循环的问题

java - 如何根据变量选择同一个表的不同数据

java - JPA 和 Hibernate 中的 persist() 和 merge() 有什么区别?

java - 如何使用 JPA/Hibernate 在 Repository 中实现保存

Android Studio 3.0.1 错误 : Gradle project sync failed. 基本功能(例如编辑、调试)将无法正常工作

grails - 解压缩deploy war文件后,grains 3.0.3 with asset-pipeline-gradle:2.3.8无法正常工作

java - 在NearablesDemoActivity.java中添加什么方法

java - 如何将 JSONArray 中的字节复制到字节数组