上传文件数据时模糊学说异常(并存储为 longblob)

vague doctrine exception when uploading file data (and store as longblob)

我有一个关于神秘学说查询错误的问题。 长话短说:我正在尝试将 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

当我的实体管理器刷新实体时出现此错误:

An exception occurred while executing 'INSERT INTO DataBlocks (data_block_name, content, comment, ts_added, data_type_id_id, project_id_id) VALUES (?, ?, ?, ?, ?, ?)' with params ["BTC_DOGE_tradehistory", Resource id #66, "450mb", "2018-10-08 10:19:44", 1, 1]: Warning: Error while sending QUERY packet. PID=6016

非常感谢您的帮助!

仅供参考:它适用于小文件,但是当我尝试上传大文件时,它变成了那个模糊的错误

异常中描述的查询告诉您 content 列的值为 PHP 资源。所以我认为这是一个演员表问题。 Blob 数据存储为字节字符串。您还可能遇到服务器配置问题。有 Apache/Nginx 或其他什么,PHP 还有服务器 sql.

这里是 mysql 的示例:doc