Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.4k views
in Technique[技术] by (71.8m points)

php - Define property zerofill and size on field schema migration with laravel

How can I define property zerofill and size (2) on field schema migration with Laravel?

Schema::create('books', function (Blueprint $table) {
    $table->integer('reference')->length(2);
});

and this field with zerofill.

I would like use my seeder:

public function run()
{
    Book::create
    ([
        'reference' => 01
    ]);
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Zerofill is not a SQL standard. The shema builder of laravel provides only these ANSI SQL standards.

But you can use a workaround to define it with a raw sql statement:

create_books.php

Schema::create('books', function (Blueprint $table) {
    $table->integer('reference');
});
DB::statement('ALTER TABLE books CHANGE reference reference INT(2) UNSIGNED ZEROFILL NOT NULL');

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...