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> ...
随机推荐
- 关于 Pragma 的使用总结
注意:此文乃是本人阅读多个博客文章后,记下的个人认为重点的地方. 参考文章: 参考1 参考2 #Pragma mark - 用于分离类中的不同功能的方法.(例如,一个 viewController ...
- Spark部署三种方式介绍:YARN模式、Standalone模式、HA模式
参考自:Spark部署三种方式介绍:YARN模式.Standalone模式.HA模式http://www.aboutyun.com/forum.php?mod=viewthread&tid=7 ...
- 多线程编程-工具篇-BlockingQueue
在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全"传输"数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序 ...
- yii2 model层中配置常量与list
- jquery的$().each,$.each的区别
在jquery中,遍历对象和数组,经常会用到$().each和$.each(),两个方法.两个方法是有区别的,从而这两个方法在针对不同的操作上,显示了各自的特点. $().each,对于这个方法,在d ...
- AngularJS基础知识2
一.angularJS双向数据绑定 利用双向数据绑定,不仅能把数据模型的变化同步到视图上面,还可以利用双向数据绑定的特性来做一些样式上面的控制. 双向数据绑定用处很多,不仅仅是像知识点1中的那个例子, ...
- ACM集训的1B。。。。黑色星期五。。。。2333333
题目: 印象中有好多个13号是星期五,13号在星期五比在其他日子少吗?为了回答这个问题,写一个程序,要求计算每个月的十三号落在周一到周日的次数.给出N年的一个周期,要求计算1900年1月1日至1900 ...
- Python学习【第三篇】Python变量
变量 声明变量 #!/usr/bin/env python name = "Bourbon" 上述代码声明了一个变量,变量名为:name,变量的值为:"Bourbon&q ...
- Android pop3与imap方式接收邮件(javamail)
需要下载3个jar包:mail.jar/ activation.jar/ additionnal.jar 1.pop3 /** * 以pop3方式读取邮件,此方法不能读取邮件是否为已读,已 ...
- Mongodb在Linux下的安装和启动和配置
第一步:下载mongodb安装包,下载版本:2.0.2-rc2 下载链接: http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.1.tgz 第 ...