上载文件数据(并存储为longblob)时出现模糊的学说例外

时间:2018-10-08 09:26:05

标签: doctrine-orm symfony4

我有一个关于神秘学说查询错误的问题。 长话短说:我正在尝试将longblob数据存储在数据库中(例如,最高可达x00mb),所以我执行了以下步骤: 创建我自己的longblob类型和字段,根据以下内容进行注册: https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/cookbook/advanced-field-value-conversion-using-custom-mapping-types.html Doctrine custom data type

我的MySQL数据库看起来像:所以我认为它有效吗? mysql> describe DataBlocks; +-----------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | data_type_id_id | int(11) | NO | MUL | NULL | | | project_id_id | int(11) | NO | MUL | NULL | | | data_block_name | varchar(100) | YES | | NULL | | | content | longblob | YES | | NULL | | | comment | longtext | YES | | NULL | | | ts_added | datetime | NO | | NULL | | +-----------------+--------------+------+-----+---------+----------------+

我的Symfony4.1 FormType文件字段如下:

public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('dataBlockName', TextType::class)
            ->add('content', FileType::class)

我也将php.ini文件中的行调整为无限制的文件大小(我知道这并不是很安全,但是.. post_max_size = 0M upload_max_filesize = 0M

当我的实体管理器刷新实体时,我得到此错误:

  

执行'INSERT INTO DataBlocks时发生异常   (data_block_name,内容,评论,ts_add,data_type_id_id,   project_id_id)VALUES(?,?,?,?,?,?)   [“ BTC_DOGE_tradehistory”,资源ID#66,“ 450mb”,“ 2018-10-08   10:19:44“,1,1]:        警告:发送QUERY数据包时出错。 PID = 6016

您的帮助将不胜感激!

仅供参考:它适用于小文件,但是当我尝试上传大文件时,就会出现模糊的错误

1 个答案:

答案 0 :(得分:1)

异常中描述的查询告诉您content列具有PHP资源的价值。所以我认为这是一个强制性的问题。 Blob数据存储为字节字符串。服务器配置也可能有问题。有Apache / Nginx或其他任何形式的PHP,还有服务器sql。

以下是mysql的示例:doc