我在 Laravel 4 的 Migrations 中使用 Schema Builder 在开发过程中管理我的 Postgres 数据库。我遇到了一个问题。我想在我的表中使用 Postgres Hstore 列类型,但我想不通。
Schema Builder 中似乎没有“自定义”列类型(我可以找到),所以这是我在迁移中的尝试。这对我不起作用。
Schema::create('entities', function(Blueprint $table)
{
$table->bigIncrements('id');
$table->string('type');
$table->string('name');
$table->text('data')->nullable();
$table->timestamps();
$table->softDeletes();
});
DB::raw("ALTER TABLE `entities` CHANGE COLUMN `data` `data` hstore NULL;");
我也试过这个而不是最后一个命令。没运气。
DB::raw("ALTER TABLE `entities` ALTER `data` TYPE hstore;");
注意:我确实已经CREATE EXTENSION hstore
在我的数据库中运行了该命令。