获取错误[Doctrine dbal dbalexception]请求的未知数据库类型点,Doctrine



我正在使用Laravel,我刚刚添加了一个新的迁移,以增加列的大小。第一个生成的表具有Point类型的latlong列。我无法修改任何列大小?

当我尝试修改列的大小时,我会在下面收到错误:

[学说 dbal dbalexception]
未知的数据库类型点请求,Doctrine dbal Platforms mysql57platform可能不支持它。

这是我的迁移文件。第一个迁移是为创建表abc

创建表
public function up()
{
 Schema::create('abc', function (Blueprint $table) {
        $table->increments('id');
        $table->string('first_name', 20);
        $table->string('last_name', 20);
        $table->string('street', 100);
        $table->string('city', 50)->nullable();
        $table->string('state', 50)->nullable();
        $table->string('postal_code', 15);
        $table->string('mobile', 10)->nullable();
        $table->timestamps();
        $table->softDeletes();
});   
IlluminateSupportFacadesDB::statement('ALTER TABLE abc ADD latlong POINT');
}

第二个迁移是用于更新列大小

public function up()
{
 Schema::table('abc', function (Blueprint $table){
     $table->string('mobile', 20)->nullable()->change();
 });
}

任何人都可以帮我吗?

在您的迁移中,添加以下功能:

public function __construct()
{
    IlluminateSupportFacadesDB::getDoctrineSchemaManager()
       ->getDatabasePlatform()->registerDoctrineTypeMapping('point', 'string');
}

相关内容

  • 没有找到相关文章

最新更新