数据库迁移是数据库的版本管理,要使用数据库迁移,需要在.env文件中连接好数据库(不多说)。laravel本身已经存在user表和password_resets表的迁移了,因此,执行

php artisan migrate

便会在数据库中创建好user表、password_resets表和migrations表。migrations表是版本记录表。

命令执行的其实是 database\migration 下的迁移文件。迁移文件中调用的方法会替我们执行数据库操作(建表)。每个文件的命名对应迁移创建的时间和迁移的表名称。

现在我们要添加自己的迁移表。

创建迁移

方法一:创建数据模型的时候加上 -m ,例如:

php artisan make:model Models/Moment -m

就会在 database/migrations 下看到新建的迁移文件。打开文件,主要有 up 和 down 方法。

  • 当我们运行迁移时,up 方法会被调用;
  • 当我们回滚迁移时,down 方法会被调用。

方法二:

php artisan make:migration create_moments_table

其中 “moments” 就是要创建的表名,这里要写你自己的表名。

创建表

在up方法中,我们编写创建表的语句:

 Schema::create('moments', function (Blueprint $table) {

     $table->increments('id');

     $table->integer('user_id');

     $table->string('title');

     $table->string('content');

     $table->timestamps();

 });

保存后执行 php artisan migrate ,会创建5个字段的moments表。

修改表

方法一:修改迁移文件,执行命令

php artisan migrate:refresh

方法二:如果要修改表,新建一个迁移文件:

php artisan make:migration alter_moments_table

其中 “moments” 就是要修改的表名,这里要写你自己的表名。

在 up 方法中:

 Schema::table('moments', function (Blueprint $table) {
$table->string('test');
});

与创建表的区别是,create 方法改成 table 方法。

最新文章

  1. discuz插件开发新手入门 超详细
  2. fcitx中文输入法
  3. Struts2 权限验证
  4. 基于 dbms_redefinition 在线重定义表
  5. iOS键盘遮挡问题解决办法
  6. 腾讯ISUX网页前端代码分析
  7. redis常见使用场景下PHP实现
  8. mingw-gcc-8.3.0-i686-posix-sjlj
  9. [转]HTML5 script 标签的 crossorigin 属性到底有什么用?
  10. sublime Text 常用插件
  11. Modbus
  12. CMOS Sensor的调试经验分享【转】
  13. python--模拟蜂窝网(https)登陆总结
  14. iOS-WKWebView的使用
  15. php+phpspreadsheet读取Excel数据存入mysql
  16. python-状态模式
  17. ansible(一)
  18. cuda+ffmpeg+opengl解码rtsp h264码流多路
  19. OO第三次阶段总结
  20. Ajax datatype:'JSON'的error问题Status1:200,JSON格式

热门文章

  1. Android Studio 调试各种国产手机经验总结
  2. Day4:html和css
  3. Metasploit Framework(6)客户端渗透(上)
  4. Python 字符串增删改查的使用
  5. 解读JavaScript 之引擎、运行时和堆栈调用
  6. 为什么推荐前端使用Vue.js
  7. Apace、Ngnix、Tomcat三者关系
  8. sql server 性能调优之 资源等待 CXPACKET
  9. 记一次eureka客户端注册失败的问题
  10. Dockerfile 时区设置