Yii2.0-advanced-4—数据迁移和gii
来源:互联网 发布:多系统启动软件 编辑:程序博客网 时间:2024/06/08 06:07
yii2.0支持migrate数据迁移,使用数据迁移可以对数据库进行版本化的管理,方便了数据库的管理和操作。
一、创建迁移(生成的迁移文件位置:app\console\migrations\)
1、创建blog表
使用create_blog_table
这个名称并运行如下命令:
yii migrate/create create_blog_table
代码结构如下:
<?phpuse yii\db\Migration;use yii\db\Schema;class m170926_085221_create_blog_table extends Migration{ public function up() { $this->createTable('blog', [ 'id' => Schema::TYPE_PK." comment 'blog表id' ", 'title' => Schema::TYPE_STRING." comment 'blog标题' ", 'content' => Schema::TYPE_TEXT." comment 'blog内容' ", 'column_id' => Schema::TYPE_INTEGER." comment '分类id' ", 'create_at' => Schema::TYPE_INTEGER." comment '发布时间' ", ]); } public function down() { $this->dropTable('blog'); }}
当你通过 migration 创建一张表或者字段的时候,你应该使用 抽象类型 而不是 实体类型, 这样一来你的迁移对象就可以从特定的 DBMS 当中抽离出来。 yii\db\Schema 类定义了一整套可用的抽象类型常量。这些常量的格式为 TYPE_<Name>
。推荐使用Schema抽象数据类,它可以用字符串的形式添加字段属性,使用更灵活。
2、添加review字段
使用add_review_to_blog
这个名称并运行如下命令:
yii migrate/create add_review_to_blog
代码如下
<?phpuse yii\db\Migration;use yii\db\Schema;class m170927_011743_add_review_to_blog extends Migration{ public function up() { $this->addColumn('blog','review',Schema::TYPE_BOOLEAN." default false comment '审核' "); } public function down() { $this->dropColumn('blog','review'); }}
二、执行迁移
1、执行全部迁移
yii migrate
2、执行某个迁移文件
yii migrate/to m170927_011743_add_review_to_blog
三、还原迁移
yii migrate/down # revert the most recently applied migration 还原最近一次提交的迁移
yii migrate/down3# revert the most 3 recently applied migrations 还原最近三次提交的迁移
四、重做迁移
重做迁移的意思是先还原指定的迁移,然后再次提交。 如下所示:
yii migrate/redo # redo the last applied migration 重做最近一次提交的迁移yii migrate/redo 3 # redo the last 3 applied migrations 重做最近三次提交的迁移
五、列出迁移你可以使用如下命令列出那些提交了的或者是还未提交的迁移:
yii migrate/history # 显示最近10次提交的迁移yii migrate/history 5 # 显示最近5次提交的迁移yii migrate/history all # 显示所有已经提交过的迁移yii migrate/new # 显示前10个还未提交的迁移yii migrate/new 5 # 显示前5个还未提交的迁移yii migrate/new all # 显示所有还未提交的迁移
其他详细内容,参考 yii2.0权威指南-------------------------------------------------------------
gii的使用
当表创建成功后就可以使用gii这个组件快速生成 model 和 crud 操作了
直接访问:/gii 可视化化操作
- Yii2.0-advanced-4—数据迁移和gii
- YII2.0-advanced-4—URL美化
- yii2.0 使用 Gii 生成代码
- Yii2.0 Gii工具的使用
- Yii2.0-advanced-3—语言包配置
- Yii2.0-advanced-11—restfull架构
- Yii2.0advanced分页:
- 安装yii2.0 advanced
- Yii2.0-advanced-5—行为的使用(自动生成model时间数据)
- yii2 使用gii
- yii2的gii配置
- Yii2的脚手架Gii
- Advanced Gii 提示 403
- Yii2 framework学习笔记(七) -- gii和GridView
- yii2基础 — 启动advanced版yii2
- Yii2.0-advanced-5—添加重复密码和验证码
- yii2.0数据库迁移 [多个数据库同时同步数据]
- Yii2.0-advanced-10—数据库操作4(AR条件查询where)
- Android中判断详细的网络
- 如何减少http请求
- RecyclerView加载瀑布流,图片自适应问题
- 关于mybatis批量问题
- idea快捷键
- Yii2.0-advanced-4—数据迁移和gii
- leetcode Baseball Game 篮球游戏
- 第三周项目4(1) 建立单链表
- PO BO VO DTO POJO DAO概念及其作用
- 数据库常用操作
- MVC架构的理解
- 基于Executor的简单的web服务器demo
- 第四周项目4——建设双链表算法库
- java三木运算符的用法