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> ...
随机推荐
- 包管理工具Carthage使用
iOS项目中第三方开源库的工具有Cocoapods和Carthage,swift官方出了一个包管理工具SPM(Swift Package Manager). 首先,大体讲一下Cocoapods和Car ...
- wamp下多域名配置问题
1.找到wamp安装目录的apache安装目录 找到 httpd.conf文件 例如我安装的目录为 E:\wamp\bin\apache\apache2.2.8\conf\httpd.conf 也可以 ...
- drop表后仍占表空间解决办法
练习oracle时create了很多表,drop表后select * from tab; 网上找了好些方法,但是好多都适用... SQL>purge recyclebin; 回收站已清空.
- imx6 usb otg config 配置
imx6 usb的host和slave配置,配置之后,安装gadget模块,就能够在host和slave之间切换. 参考文档: i.MX 6Dual/6Quad Linux Reference Man ...
- linux指定nologin用户执行命令
为了安全,使用nologin账号来运行程序, su -s /bin/bash -c "ls" www 这条命令到底做了什么呢?su -s 是指定shell,这里www用户是nolo ...
- 12月22日《奥威Power-BI财务报表数据填报》腾讯课堂开课啦
一扇可以通向任何地方的“任意门”,是我们多少人幼时最梦寐以求的道具之一.即使到了现在,工作中的我们还会时不时有“世界那么大,我想去看看”的念头,或者在突然不想工作的时刻,幻想着自己的家门变成了“任意门 ...
- 使用NUGet自动下载(还原)项目中使用的包
签出完整项目后,在解决方案名称上点右键,选择"启用NuGet程序包还原",如下图: 出现询问,当然要点是:是 当完成后,会发现在解决方案中,多出".nuget" ...
- 如何删除NSDictionary或NSArray中的NSNull
前段时间与某公司的技术交流,被问到一个问题,如何删除NSDictionary中的NSNull.当时在纸上写,以前太依赖Xcode编译器了,以至于方法名都写不全,最终也没写出来,我想我肯定被鄙视的体无完 ...
- 在windows 与Linux间实现文件传输(C++&C实现)
要实现windows与linux间的文件传输,可以通过socket网络编程来实现. 这次要实现的功能与<Windows下通过socket进行字符串和文件传输>中实现的功能相同,即客户端首先 ...
- memcpy内存复制
memcpy(predata,frame,1920*1080*4);