Migration 创建 及 字段类型

  • 时间:
  • 浏览:2

创建字段

打开刚才migration出来的表,经常冒出以下内容

命令 描述

$table->bigIncrements('id'); 自增ID,类型为bigint

$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->decimal('amount', 5, 2); 等同于数据库中的DECIMAL类型,带有有另一个多 精度和范围

$table->double('column', 15, 8); 等同于数据库中的DOUBLE类型,带精度, 总共15位数字,小数点后8位.

$table->enum('choices', ['foo', 'bar']); 等同于数据库中的 ENUM类型

$table->float('amount'); 等同于数据库中的 FLOAT 类型

$table->increments('id'); 数据库主键自增ID

$table->integer('votes'); 等同于数据库中的 INTEGER 类型

$table->json('options'); 等同于数据库中的 JSON 类型

$table->jsonb('options'); 等同于数据库中的 JSONB 类型

$table->longText('description'); 等同于数据库中的 LONGTEXT 类型

$table->mediumInteger('numbers'); 等同于数据库中的 MEDIUMINT类型

$table->mediumText('description'); 等同于数据库中的 MEDIUMTEXT类型

$table->morphs('taggable'); 换成有有另一个多 INTEGER类型的 taggable_id 列和有有另一个多 STRING类型的 taggable_type列

$table->nullableTimestamps(); 和 timestamps()一样但允许 NULL值.

$table->rememberToken(); 换成有有另一个多 remember_token 列: VARCHAR(1000) NULL.

$table->smallInteger('votes'); 等同于数据库中的 SMALLINT 类型

$table->softDeletes(); 新增有有另一个多 deleted_at列 用于软删除.

$table->string('email'); 等同于数据库中的 VARCHAR 列 .

$table->string('name', 1000); 等同于数据库中的 VARCHAR,带有有另一个多 长度

$table->text('description'); 等同于数据库中的 TEXT 类型

$table->time('sunrise'); 等同于数据库中的 TIME类型

$table->tinyInteger('numbers'); 等同于数据库中的 TINYINT 类型

$table->timestamp('added_on'); 等同于数据库中的 TIMESTAMP 类型

$table->timestamps(); 换成 created_at和updated_at列.

$table->uuid('id'); 等同于数据库的UUID

字段类型

对应的命令和相应数据库里的类型

创建migration

创建dddd表