Laravelの移行とデータを失うことなく、二重にint型から列のデータ型を変更することが可能です

Sudiptoロイ:

私は私の列のデータ型のいずれかを変更しようとしています。テーブルを作成するための私の移行がありました。

public function up()
    {
        Schema::create('place_ratings', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->unsignedBigInteger('places_id');
            $table->foreign('places_id')->references('id')->on('places');
            $table->integer('rating');
            $table->mediumText('comments');
            $table->timestamps();
        });
    }

私はからの評価表のデータ型を変更したいintegerfloat私はすでに私のテーブル内のいくつかのデータを持っていると私はそれらを失いたくありません。だから、私はそれをどのように行うことができますか?

炎:

あなたは、簡単な移行を使用して、その列を変更することができる表示されるはずですhttps://laravel.com/docs/5.8/migrations#modifying-columns追加情報については:

あなたはインストールする必要がありcomposer require doctrine/dbal、これらの列を変更するSQLを生成する能力を最初に。

Schema::table('place_ratings', function (Blueprint $table) {
    $table->decimal('rating', 16, 4)->change();
});

16そして4したがってこの場合には、範囲の数であろう、全長及び小数精度を意味0.0000する(ドットの前に何も、後4) 000000000000.0000ドット前12、そう合計16、後4)。

あなたは望ましくない副作用を持っていないことを確認する最初のローカルで実行するようにしてください。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=25771&siteId=1