相关疑难解决方法(0)

在MySQL中使用"TYPE = InnoDB"抛出异常

当我尝试执行以下操作SQLMySQL,我收到错误:

SQL:

        SQL = "CREATE TABLE Ranges (";
        SQL += "ID varchar(20) NOT NULL, ";
        SQL += "Descriptions longtext NULL, ";
        SQL += "Version_Number int NULL, ";
        SQL += "Row_Updated bigint NULL, ";
        SQL += "Last_Updated datetime NULL, ";
        SQL += "XML longtext NULL, ";
        SQL += "PRIMARY KEY (ID)";
        SQL += ") " + "TYPE = InnoDB";
Run Code Online (Sandbox Code Playgroud)

错误:

您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在"TYPE = InnoDB"附近使用正确的语法

但是,如果我删除"TYPE = InnoDB",那么查询工作正常.

以前查询工作正常,即在MySQL 5.0.但是当我升级到时MySQL 5.6,我收到了上述错误.

任何建议/替代方案...... …

mysql sql mysql-5.0 mysql-5.6

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

MySQL 8的Hibernate方言?

MySQL 8是否有Hibernate方言?或者我应该使用Hibernate附带的org.hibernate.dialect.MySQL57Dialect?我正在使用hibernate 5.2.16

java mysql hibernate

18
推荐指数
6
解决办法
3万
查看次数

使用MySQL,为什么Hibernate/JPA不为我创建外键约束?

在这里记录这个因为我只是浪费了一个小时试图解决这个问题.

我有一个实体Foo:

@ManyToOne(optional = false)
@JoinColumn(name = "barId")
private Bar bar;
Run Code Online (Sandbox Code Playgroud)

为什么Hibernate不在foo.bar - > bar.id上创建外键约束?

mysql hibernate jpa

9
推荐指数
3
解决办法
6292
查看次数

不能在 SpringData 中使用 String 作为 @Id

我想使用这个类在我的数据库上创建新表

@Entity
@Table(name = "currency_rate")
public class CurrencyRate {

    @Id
    private String id;

    @Column(name = "source_currency")
    private String sourceCurrency;

    @Column(name = "target_currency")
    private String targetCurrency;

    @Column(name = "exchange_rate")
    private double exchangeRate;

    @Column
    private Date date;

    @PrePersist
    public void generateID() {            
        this.id = this.date.toString().replace("-", "") + sourceCurrency + targetCurrency;
    }
    //getters, setters
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用属性运行我的应用程序时

spring.jpa.hibernate.ddl-auto=create
Run Code Online (Sandbox Code Playgroud)

我得到了这个例外

引起:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:指定的键太长;最大密钥长度为 1000 字节

好像不能用 Spring 作为我的 ID?将类型更改为 Long 可以解决问题,但我真的很想将 String 与这个一起使用。从我搜索的内容来看,它应该是完全可行的。

mysql spring spring-data

5
推荐指数
1
解决办法
904
查看次数

Spring Boot + JPA:@Transactional 注释:回滚不起作用

我正在将 @Transactional 与 spring boot 和 jpa 一起使用。但它不起作用。有人可以帮忙吗。

我的插入在 myDAO 中,它在服务类中自动装配。下面的代码是实现服务接口的服务类的方法

class MyService implements Service {

@Transactional(rollbackFor = RuntimeException.class)
    public ResponseVO createOrder(params) {
    myDAO.insertInTable1(param);
    myDAO.insertInTable2(param);//I kept wrong table name in this query such that it throws exception
         }

 }
Run Code Online (Sandbox Code Playgroud)

java spring jpa spring-boot

3
推荐指数
1
解决办法
4987
查看次数

标签 统计

mysql ×4

hibernate ×2

java ×2

jpa ×2

spring ×2

mysql-5.0 ×1

mysql-5.6 ×1

spring-boot ×1

spring-data ×1

sql ×1