Schema创建表

mac2024-04-17  44

Schema

// 创建指定数据表 Schema::create(‘table’, function($table) { KaTeX parse error: Expected 'EOF', got '}' at position 26: …rements('id'); }̲); // 指定一个连接 Sc…table){}); // 通过给定的名称来重命名数据表 Schema::rename($from, t o ) ; / / 移 除 指 定 数 据 表 S c h e m a : : d r o p ( ′ t a b l e ′ ) ; / / 当 数 据 表 存 在 时 , 将 指 定 数 据 表 移 除 S c h e m a : : d r o p I f E x i s t s ( ′ t a b l e ′ ) ; / / 判 断 数 据 表 是 否 存 在 S c h e m a : : h a s T a b l e ( ′ t a b l e ′ ) ; / / 判 断 数 据 表 是 否 有 该 列 S c h e m a : : h a s C o l u m n ( ′ t a b l e ′ , ′ c o l u m n ′ ) ; / / 更 新 一 个 已 存 在 的 数 据 表 S c h e m a : : t a b l e ( ′ t a b l e ′ , f u n c t i o n ( to); // 移除指定数据表 Schema::drop('table'); // 当数据表存在时, 将指定数据表移除 Schema::dropIfExists('table'); // 判断数据表是否存在 Schema::hasTable('table'); // 判断数据表是否有该列 Schema::hasColumn('table', 'column'); // 更新一个已存在的数据表 Schema::table('table', function( to);//Schema::drop(table);//,Schema::dropIfExists(table);//Schema::hasTable(table);//Schema::hasColumn(table,column);//Schema::table(table,function(table){}); // 重命名数据表的列 $table->renameColumn(‘from’, ‘to’); // 移除指定的数据表列 $table->dropColumn(string|array); // 指定数据表使用的存储引擎 $table->engine = ‘InnoDB’; // 字段顺序,只能在 MySQL 中才能用 $table->string(‘name’)->after(‘email’);

索引

$table->string(‘column’)->unique(); $table->primary(‘column’); // 创建一个双主键 $table->primary(array(‘first’, ‘last’)); $table->unique(‘column’); $table->unique(‘column’, ‘key_name’); // 创建一个双唯一性索引 $table->unique(array(‘first’, ‘last’)); $table->unique(array(‘first’, ‘last’), ‘key_name’); $table->index(‘column’); $table->index(‘column’, ‘key_name’); // 创建一个双索引 $table->index(array(‘first’, ‘last’)); $table->index(array(‘first’, ‘last’), ‘key_name’); $table->dropPrimary(array(‘column’)); $table->dropPrimary(‘table_column_primary’); $table->dropUnique(array(‘column’)); $table->dropUnique(‘table_column_unique’); $table->dropIndex(array(‘column’)); $table->dropIndex(‘table_column_index’);

外键

$table->foreign(‘user_id’)->references(‘id’)->on(‘users’); $table->foreign(‘user_id’)->references(‘id’)->on(‘users’)->onDelete(‘cascade’|‘restrict’|‘set null’|‘no action’); $table->foreign(‘user_id’)->references(‘id’)->on(‘users’)->onUpdate(‘cascade’|‘restrict’|‘set null’|‘no action’); $table->dropForeign(array(‘user_id’)); $table->dropForeign(‘posts_user_id_foreign’);

字段类型

// 自增 $table->increments(‘id’); $table->bigIncrements(‘id’);

// 数字 $table->integer(‘votes’); $table->tinyInteger(‘votes’); $table->smallInteger(‘votes’); $table->mediumInteger(‘votes’); $table->bigInteger(‘votes’); $table->float(‘amount’); $table->double(‘column’, 15, 8); $table->decimal(‘amount’, 5, 2);

// 字符串和文本 $table->char(‘name’, 4); $table->string(‘email’); $table->string(‘name’, 100); $table->text(‘description’); $table->mediumText(‘description’); $table->longText(‘description’);

// 日期和时间 $table->date(‘created_at’); $table->dateTime(‘created_at’); $table->time(‘sunrise’); $table->timestamp(‘added_on’); // Adds created_at and updated_at columns // 添加 created_at 和 updated_at 行 $table->timestamps(); $table->nullableTimestamps();

// 其它类型 $table->binary(‘data’); $table->boolean(‘confirmed’); // 为软删除添加 deleted_at 字段 $table->softDeletes(); $table->enum(‘choices’, array(‘foo’, ‘bar’)); // 添加 remember_token 为 VARCHAR(100) NULL $table->rememberToken(); // 添加整型的 parent_id 和字符串类型的 parent_type t a b l e − > m o r p h s ( ′ p a r e n t ′ ) ; − > n u l l a b l e ( ) − > d e f a u l t ( table->morphs('parent'); ->nullable() ->default( table>morphs(parent);>nullable()>default(value) ->unsigned()

最新回复(0)