您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
数据库迁移
发布时间:2019-09-15 16:26:18编辑:雪饮阅读()
准备工作
解决依赖
composer require doctrine/dbal
创建空白数据库版本管理脚本
php artisan make:migration test
数据库管理脚本的使用
创建好数据库版本管理脚本后,在database/migrations中以你当前时间为前缀并连接上面创建版本管理脚本时的脚本名组成的php文件就是本次创建的数据库管理脚本。
在该数据库管理脚本中创建一个自定义方法用于判断某个索引是否存在
public function hasIndex($table,$name){
$conn=Schema::getConnection();
$dbSchemaManager=$conn->getDoctrineSchemaManager();
$doctrineTable=$dbSchemaManager->listTableDetails($table);
return $doctrineTable->hasIndex($name);
}
接下来就是up与down方法
up方法用于新增表,列或者索引到数据库,[运行迁移]
down方法就是up方法的反操作,[撤销迁移]
然后是up方法体的完善,up方法在初始化和刷新版本时候都会执行
up调用可以在命令行中使用php artisan migrate,运行应用中所有未执行的迁移
接下来是down方法
public function down()
{
Schema::drop('test');
}
down调用可以在命令行中使用migrate:refresh,migrate:refresh命令将会先回滚所有数据库迁移,然后运行migrate命令。
关键字词:laravel,数据库,迁移