laravel框架总结(十四) -- 数据迁移和数据填充
1 创建一个迁移
2 迁移结构
3 实施迁移
4 回滚迁移
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 (with timezone) 带时区形态 |
| $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 (主键),使用相当于「UNSIGNED INTEGER」的型态。 |
| $table->integer('votes'); | 相当于 INTEGER 型态。 |
| $table->ipAddress('visitor'); | 相当于 IP 地址形态。 |
| $table->json('options'); | 相当于 JSON 型态。 |
| $table->jsonb('options'); | 相当于 JSONB 型态。 |
| $table->longText('description'); | 相当于 LONGTEXT 型态。 |
| $table->macAddress('device'); | 相当于 MAC 地址形态。 |
| $table->mediumInteger('numbers'); | 相当于 MEDIUMINT 型态。 |
| $table->mediumText('description'); | 相当于 MEDIUMTEXT 型态。 |
| $table->morphs('taggable'); | 加入整数 taggable_id 与字符串 taggable_type。 |
| $table->nullableTimestamps(); | 与 timestamps() 相同,但允许为 NULL。 |
| $table->rememberToken(); | 加入 remember_token 并使用 VARCHAR(100) NULL。 |
| $table->smallInteger('votes'); | 相当于 SMALLINT 型态。 |
| $table->softDeletes(); | 加入 deleted_at 字段用于软删除操作。 |
| $table->string('email'); | 相当于 VARCHAR 型态。 |
| $table->string('name', 100); | 相当于 VARCHAR 型态,并带有长度。 |
| $table->text('description'); | 相当于 TEXT 型态。 |
| $table->time('sunrise'); | 相当于 TIME 型态。 |
| $table->timeTz('sunrise'); | 相当于 TIME (with timezone) 带时区形态。 |
| $table->tinyInteger('numbers'); | 相当于 TINYINT 型态。 |
| $table->timestamp('added_on'); | 相当于 TIMESTAMP 型态。 |
| $table->timestampTz('added_on'); | 相当于 TIMESTAMP (with timezone) 带时区形态。 |
| $table->timestamps(); | 加入 created_at 和 updated_at 字段。 |
| $table->uuid('id'); | 相当于 UUID 型态。 |
| 修饰 | 描述 |
| ->first() | 将此字段放置在数据表的「第一个」(仅限 MySQL) |
| ->after('column') | 将此字段放置在其它字段「之后」(仅限 MySQL) |
| ->nullable() | 此字段允许写入 NULL 值 |
| ->default($value) | 为此字段指定「默认」值,你永远不需要显式设置的默认值为 null。不设置它默认值就为null。 |
| ->unsigned() | 设置 integer 字段为 UNSIGNED |
| ->comment('my comment') | 增加注释 |
| 命令 | 描述 |
| $table->primary('id'); | 加入主键。 |
| $table->primary(['first', 'last']); | 加入复合键。 |
| $table->unique('email'); | 加入唯一索引。 |
| $table->unique('state', 'my_index_name'); | 自定义索引名称。 |
| $table->index('state'); | 加入基本索引。 |
| 命令 | 描述 |
| $table->dropPrimary('users_id_primary'); | 从「users」数据表移除主键。 |
| $table->dropUnique('users_email_unique'); | 从「users」数据表移除唯一索引。 |
| $table->dropIndex('geo_state_index'); | 从「geo」数据表移除基本索引。 |
laravel框架总结(十四) -- 数据迁移和数据填充的更多相关文章
- FreeSql (十四)批量更新数据
FreeSql支持丰富的更新数据方法,支持单条或批量更新,在特定的数据库执行还可以返回更新后的记录值. var connstr = "Data Source=127.0.0.1;Port=3 ...
- laravel中的数据迁移和数据填充
laravel中的数据迁移和数据填充 标签(空格分隔): php 生成迁移文件两种方式: 1 新建一个表的迁移文件 php artisan make:migration create_students ...
- laravel框架总结(十) -- 返回值
以前用CI框架对于返回值没有过多关注,但是发现使用laravel框架的时候出现了一些小问题,特意实践总结了一些常用情形,希望对大家有所帮助 先理解几个概念: 1>StdClass 对象=&g ...
- Zookeeper系列(十四)Zookeeper的数据与存储
作者:leesf 掌控之中,才会成功:掌控之外,注定失败. 出处:http://www.cnblogs.com/leesf456/p/6179118.html尊重原创,奇文共欣赏: 一.前言 前 ...
- oracle 数据迁移之数据泵的基本使用
oracle相同数据库下跨schema的表迁移—expdp/impdp 需求:将GUIDO用户下的表迁移到SCOTT用户下 select * from dba_role_privs where GRA ...
- Oracle数据迁移-系统数据合并笔记
创建临时表:execute immediate 'sql'; 通过临时表和关联查询解决循环处理效率低下,大数据操作移植时时间太长的问题. 结构相同的系统数据库表移植,案例如下: create or r ...
- laravel模型建立和数据迁移和数据填充(数据填充没有成功)未完
开始创建我们的第一个 Article 模型及其对应迁移文件了,我们在项目根目录运行如下 Artisan 命令一步到位: php artisan make:model Article -m -m 是 - ...
- 应用程序框架实战十四:DDD分层架构之领域实体(基础篇)
上一篇,我介绍了自己在DDD分层架构方面的一些感想,本文开始介绍领域层的实体,代码主要参考自<领域驱动设计C#2008实现>,另外参考了网上找到的一些示例代码. 什么是实体 由标识来区分的 ...
- laravel框架总结(十二) -- 关联关系
这里我们users表对应的模型类名是users,大家特意注意下和user取名的不同 1.一对一关系 1>表A和表B的记录一一对应,比如一个用户对应一个社交账号 数据表的设计如下: 2> ...
随机推荐
- Creating Signing Identities 生成签名标识
Before you can code sign your app, you create your development certificate and later, a distribution ...
- LoadRunner连接Genymotion
- 戴尔3542安装ubuntu时出现:failed to lead ldlinux.c32
解决办法: 1. 开机未进入系统是连续敲击F2,进入BIOS2.在 BIOS 的Boot菜单下,将Secure Boot 改为 Disabled3. 将Boot List Option 改为 Lega ...
- java 日期转时间戳,时间戳转为日期
package date; import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Dat ...
- 滚动轮播效果,.net 没得混看来只能去写js 了
<!DOCTYPE html> <html> <head> <title> 滚动图片 </title> <style type=&qu ...
- Mysql 数据库中所有列名为某个值的 sql 语句
SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('columnname') AND T ...
- Hdu 2845 Beans
Beans Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 夺命雷公狗-----React_native---4---初始化项目
我们首先在android目录下创建一个apps的文件夹: 然后我们在apps目录下,按住shift键加鼠标右键选择--在此打开命令窗口输入命令初始化项目 然后就是等了................. ...
- 客户端使用java,服务端使用c++的corba编程环境搭建
我们先用c++实现服务端和客户端,然后再用java编写客户端. 1. 首先安装omniORB,omniORB提供 omniidl命令,以及一些头文件和库. omniORB一般是需要你自己进行编译. 2 ...
- Silverlight5 Tools安装失败及解决方案
Silverlight5 Tools在安装的时候往往会提示以下错误 解决办法:解压Silverlight5 Tools.exe,打开ParameterInfo.xml文件,将其中的1033全部替换为2 ...