如何在Laravel模式构建器中创建Mediumblob

In the docs it says :

$table->binary('data'); // BLOB equivalent to the table

But I need a MediumBlob otherwise the images get truncated at 64K; we are running MySQL.

我知道Laravel的模式构建器与DB无关,但是有没有办法避免"原生方式",如果没有,我如何创建一个Mediumblob列呢?

推荐答案

You can't.

issue条建议使用原始查询来创建这样的列,因此您应该在迁移文件中执行以下操作:

Schema::create("<table name>", function($table) {
    // here you do all columns supported by the schema builder
});

// once the table is created use a raw query to ALTER it and add the MEDIUMBLOB
DB::statement("ALTER TABLE <table name> ADD <column name> MEDIUMBLOB");

Laravel相关问答推荐

无法在终端cPanel中打开输入文件:artisan

Laravel FAKER语法

模型文件名更改数据库中的表名

Laravel Debugbar 中的 Laravel api routes路由

处理程序类中的错误 - Laravel

用户''@'localhost'对数据库'forge'的访问被拒绝随机出现

Laravel 5表单请求验证返回禁止错误

允许的内存大小 134217728 字节用尽(试图分配 20480 字节) Laravel

Laravel:Blade foreach 循环 bootstrap 列

Laravel 4 如何监听模型事件?

如何判断是否在laravel中设置了cookie?

不支持驱动Driver[] - Laravel 5.3

Database[] 未配置 Laravel 5

Laravel 在特定文件夹中创建迁移文件

Laravel/Lumen 中两列之间的 SQL

在 Laravel 中结合 AND/OR Eloquent的查询

在 laravel 中安装 vue 3.0

Laravel 不活动时间设置

Laravel - 使用 Eloquent 查询构建器在 Select 中添加自定义列

Laravel 更新后用户模型错误(用户类包含 3 个抽象方法)