上传文件数据时模糊学说异常(并存储为 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
我有一个关于神秘学说查询错误的问题。 长话短说:我正在尝试将 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