Типы и модификаторы столбцов
Миграции (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 и выше) |