Типы и модификаторы столбцов

Миграции (Database: Migrations) в Laravel 5.*

Типы столбцов

Команда Описание
$table->bigIncrements(‘id’); Инкрементный ID (первичный ключ), использующий эквивалент «UNSIGNED BIG INTEGER»
$table->bigInteger(‘votes’); Эквивалент BIGINT для базы данных
$table->binary(‘data’); Эквивалент BLOB для базы данных
$table->boolean(‘confirmed’); Эквивалент BOOLEAN для базы данных
$table->char(‘name’, 4); Эквивалент CHAR для базы данных
$table->date(‘created_at’); Эквивалент DATE для базы данных
$table->dateTime(‘created_at’); Эквивалент DATETIME для базы данных
$table->dateTimeTz(‘created_at’); Эквивалент DATETIME (с часовым поясом) для базы данных (для версии 5.2 и выше)
$table->decimal(‘amount’, 5, 2); Эквивалент DECIMAL с точностью и масштабом
$table->double(‘column’, 15, 8); Эквивалент DOUBLE с точностью, всего 15 цифр, после запятой 8 цифр
$table->enum(‘choices’, [‘foo’, ‘bar’]); Эквивалент ENUM для базы данных
$table->float(‘amount’, 8, 2); Эквивалент FLOAT для базы данных, всего 8 знаков, из них 2 после запятой (для версии 5.3 и выше)
$table->float(‘amount’); Эквивалент FLOAT для базы данных (для версии 5.2 и ранее)
$table->increments(‘id’); Инкрементный ID (первичный ключ), использующий эквивалент «UNSIGNED INTEGER»
$table->integer(‘votes’); Эквивалент INTEGER для базы данных
$table->ipAddress(‘visitor’); Эквивалент IP-адреса для базы данных (для версии 5.2 и выше)
$table->json(‘options’); Эквивалент JSON для базы данных
$table->jsonb(‘options’); Эквивалент JSONB для базы данных
$table->longText(‘description’); Эквивалент LONGTEXT для базы данных
$table->macAddress(‘device’); Эквивалент MAC-адреса для базы данных (для версии 5.2 и выше)
$table->mediumIncrements(‘id’); Инкрементный ID (первичный ключ), использующий эквивалент «UNSIGNED MEDIUM INTEGER» (для версии 5.3 и выше)
$table->mediumInteger(‘numbers’); Эквивалент MEDIUMINT для базы данных
$table->mediumText(‘description’); Эквивалент MEDIUMTEXT для базы данных
$table->morphs(‘taggable’); Добавление столбца taggable_id INTEGER (для версии 5.3 и выше Unsigned INTEGER) и taggable_type STRING
$table->nullableMorphs(‘taggable’); Аналогично morphs(), но разрешено значение NULL (для версии 5.3 и выше)
$table->nullableTimestamps(); Аналогично timestamps(), но разрешено значение NULL
$table->rememberToken(); Добавление столбца remember_token VARCHAR(100) NULL
$table->smallIncrements(‘id’); Инкрементный ID (первичный ключ), использующий эквивалент «UNSIGNED SMALL INTEGER» (для версии 5.3 и выше)
$table->smallInteger(‘votes’); Эквивалент SMALLINT для базы данных
$table->softDeletes(); Добавление столбца deleted_at для мягкого удаления (для версии 5.3 и выше разрешено значение NULL)
$table->string(’email’); Эквивалент VARCHAR
$table->string(‘name’, 100); Эквивалент VARCHAR с длинной
$table->text(‘description’); Эквивалент TEXT для базы данных
$table->time(‘sunrise’); Эквивалент TIME для базы данных
$table->timeTz(‘sunrise’); Эквивалент TIME (с часовым поясом) для базы данных (для версии 5.2 и выше)
$table->tinyInteger(‘numbers’); Эквивалент TINYINT для базы данных
$table->timestamp(‘added_on’); Эквивалент TIMESTAMP для базы данных
$table->timestampTz(‘added_on’); Эквивалент TIMESTAMP (с часовым поясом) для базы данных (для версии 5.2 и выше)
$table->timestamps(); Добавление столбцов created_at и updated_at (для версии 5.3 и выше разрешено значение NULL)
$table->timestampsTz(); Добавление столбцов created_at и updated_at (с часовым поясом), для которых разрешено значение NULL (для версии 5.3 и выше)
$table->unsignedBigInteger(‘votes’); Эквивалент Unsigned BIGINT для базы данных (для версии 5.3 и выше)
$table->unsignedInteger(‘votes’); Эквивалент Unsigned INT для базы данных (для версии 5.3 и выше)
$table->unsignedMediumInteger(‘votes’); Эквивалент Unsigned MEDIUMINT для базы данных (для версии 5.3 и выше)
$table->unsignedSmallInteger(‘votes’); Эквивалент Unsigned SMALLINT для базы данных (для версии 5.3 и выше)
$table->unsignedTinyInteger(‘votes’); Эквивалент Unsigned TINYINT для базы данных (для версии 5.3 и выше)
$table->uuid(‘id’); Эквивалент UUID для базы данных

 

Модификаторы столбцов

Модификатор Описание
->after(‘column’) Помещает столбец «после» указанного столбца (только MySQL)
->comment(‘my comment’) Добавляет комментарий в столбец (для версии 5.2 и выше)
->default($value) Указывает значение «по умолчанию» для столбца
->first() Помещает столбец «первым» в таблице (только MySQL)
->nullable() Разрешает вставлять значения NULL в столбец
->storedAs($expression) Создать генерируемый столбец типа stored (только MySQL) (для версии 5.3 и выше)
->unsigned() Делает столбцы integer беззнаковыми UNSIGNED
->virtualAs($expression) Создать генерируемый столбец типа virtual (только MySQL) (для версии 5.3 и выше)