gpt4 book ai didi

java - 错误: Data too long for column 'imagen' at row 1 with column 'MEDIUMBLOB' in MySQL

转载 作者:行者123 更新时间:2023-11-29 20:58:48 24 4
gpt4 key购买 nike

我在 MySQL 数据库中存储大小从 1MB 到最大 7MB 的图像。为此,我创建了一个表,其中字段为 MEDIUMBLOB 类型,容量为 16,777,215 字节,同样为 16mb。当我保存高达 2.2MB 的图像时,它可以完美存储,但是当保存更大但不超过 7MB 的图像时,会出现以下错误:

com.mysql.jdbc.MysqlDataTruncation: Data truncation: 
Data too long for column 'imagen' at row 1

这是我的实体图像中图像字段的定义:

@Entity
@Access(AccessType.FIELD)
@Table(name = "Imagen")
@XmlRootElement
public class Imagen implements Serializable {
// otros campos
@Lob
@Column(name = "imagen", columnDefinition = "mediumblob")
private byte[] imagen;

// getters and setters
}

我的存储库类:

public interface ImagenRepository extends BaseRepository<Imagen, Integer> {

// other query operations

}

基类存储库:

@NoRepositoryBean
public interface BaseRepository<T, ID extends Serializable> extends Repository<T, ID>, Finder<T>, Counter {

public T save(T save);

public void delete(ID id);

public void delete(T entity);

public Optional<T> findOne(ID id);

}

图像表:

CREATE TABLE Imagen (
id INT(10) NOT NULL AUTO_INCREMENT,
-- Otros campos
imagen MEDIUMBLOB,
type VARCHAR(10) COLLATE UTF8_SPANISH_CI,
PRIMARY KEY (id)
);

对于查询操作和持久性,请使用 spring-data-jpa。

我不明白为什么不保存超过2.2MB的图像,请帮忙

最佳答案

您可能需要增加 my.cnf 中 innodb_log_file_size 的服务器设置。然后重新启动MySQL。

关于java - 错误: Data too long for column 'imagen' at row 1 with column 'MEDIUMBLOB' in MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37403894/

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