Laravel5.5 数据库迁移-创建表与修改表示例
今天,我将为大家分享一篇关于Laravel 5.5数据库迁移的示例文章,该示例具有极好的参考价值,希望对你们有所帮助。让我们跟随长沙网络推广一起来了解一下吧。
数据库迁移是数据库的版本管理,要使用数据库迁移,首先需要在.env文件中连接好数据库。 Laravel框架本身已经存在user表和password_resets表的迁移文件,执行php artisan migrate命令便会在数据库中自动创建好这两个表以及一个记录迁移版本的表——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方法中,我们可以编写创建表的SQL语句。例如:
```php
Schema::create('moments', function (Blueprint $table) {
$table->increments('id'); // 自增主键id字段
$table->integer('user_id'); // 用户id字段
$table->string('title'); // 标题字段
$table->string('content'); // 内容字段
$table->timestamps(); // 创建和更新时间字段
});
```
保存后执行 `php artisan migrate` 命令,将会创建一个包含上述五个字段的moments表。
修改表
方法一:直接修改迁移文件,然后执行 `php artisan migrate:refresh` 命令刷新数据库。这将删除当前数据库的所有表并重新运行所有迁移来重建它们(包括你刚修改的迁移)。注意这是一个危险的操作,请确保你备份了重要的数据。
方法二:如果要修改已存在的表,可以新建一个迁移文件,指定要修改的表名。例如: `php artisan make:migration alter_moments_table` ,这里的“moments”是要修改的表名。然后在up方法中编写修改表的SQL语句。与创建表的不同之处在于,使用`Schema::table()`方法而不是`Schema::create()`方法。例如:
```php
Schema::table('moments', function (Blueprint $table) {
$table->string('test'); // 添加一个新的字符串类型的字段'test'
});
```
以上就是长沙网络推广分享给大家的关于Laravel 5.5数据库迁移创建表和修改表的示例,希望能给大家一个参考,也希望大家多多支持我们的分享。如有更多疑问或需求,欢迎交流学习。让我们共同提升技能,助力SEO优化。
编程语言
- Laravel5.5 数据库迁移-创建表与修改表示例
- 详解微信小程序Radio选中样式切换
- HTML5 JS压缩图片并获取图片BASE64编码上传
- node文件上传功能简易实现代码
- Zend Framework教程之Zend_Db_Table用法详解
- PHP实现的栈数据结构示例【入栈、出栈、遍历栈
- javascript实时获取鼠标坐标值并显示的方法
- Google 爬虫如何抓取 JavaScript 的内容
- javacript使用break内层跳出外层循环分析
- 基于bootstrap实现bootstrap中文网巨幕效果
- js计算时间差代码【包括计算,天,时,分,秒】
- 微信扫描二维码登录网站代码示例
- 基于jquery实现动态竖向柱状条特效
- JS传播事件、取消事件默认行为、阻止事件传播详
- PHP后台备份MySQL数据库的源码实例
- 基于Javascript实现弹出页面效果