码迷,mamicode.com
首页 > 其他好文 > 详细

laravel5 学习笔记之migration

时间:2015-03-02 18:52:24      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:

1、migrate使用  用sqlite做实验

    在配置文件中database.php中选择sqlite,并保证默认的数据库是存在的,如果没有新建对应的数据库

   

        ‘sqlite‘ => [
            ‘driver‘   => ‘sqlite‘,
            ‘database‘ => storage_path().‘/database.sqlite‘,  //就是在文件下stroage中的数据库文件database.sqlite  如果不存在需要新建
            ‘prefix‘   => ‘‘,
        ],

 

    用navicat连接这个sqlite数据库,发现这个库现在是空的,如图

技术分享

在目录migration下发现有连个文件

2014_10_12_000000_create_users_table.php
2014_10_12_100000_create_password_resets_t

2、在命令行下执行 php artisan migrate ,如果migration下的文件有改动,将更改对应的sqlite数据表,结果如下图

技术分享


此时在sqlite中将新建立对应的表,在navicat中查看如下

技术分享


新建立了四张表,其中migration和sqlite_sequence是用来管理migration的。

重复步骤2 发现返回的结果是

技术分享



表示在数据库中的文件与migration中的文件是一致的,没有更改。

在命令行输入php artisan发现关于migration的命令如下

技术分享

rollback  可以返回上部的操作


如果改动了migration下文件的一个数据表字段,只要重新执行php artisan migrate就可以重新覆盖掉原来的数据表文件。

如何建立migration文件呢?

技术分享

在命令行中执行php artisan make:migration create_articles_table --create="articles"
可以在项目的文件下看到新生成的一个文件如下
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateArticlesTable extends Migration {

    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create(‘articles‘, function(Blueprint $table)
        {
            $table->increments(‘id‘);
            $table->timestamps();  //在数据表中会多两个字段 更改和添加的字段  类型是datetime   可以在这下面添加其他的数据类型
}); }
/** * Reverse the migrations. * * @return void */ public function down() { Schema::drop(‘articles‘); } }

然后执行 php  artisan migrate 就会生成对应的新表。

laravel5 学习笔记之migration

标签:

原文地址:http://www.cnblogs.com/webclz/p/4309191.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!