thinkPHP 데이터베이스 마이그레이션 도구: topthink/think-migration
One: topthink/think-migration 설치
여기서는 topthink/think-migration을 설치할 때 thinkPHP 버전에 주의해야 한다는 점을 참고하세요. version 5.1이므로 topthink/think-migration 버전 2.0을 설치할 수 있으나, 버전 3.0은 설치할 수 없습니다. 자신에게 맞는 버전을 선택하여 설치하세요
composer require topthink/think-migration=2.0.*
설치가 완료된 후 명령줄에서 실행하세요.
php think
다음은 마이그레이션이 성공적으로 설치되었음을 의미합니다
둘: topthink/think-migration을 사용하여 데이터베이스 마이그레이션 구현
1: 마이그레이션 클래스 생성
명령줄에서 실행
php think migrate:create CreateUser
실행 후 완료되면 ./database/ migrations 디렉터리
에 마이그레이션 마이그레이션 파일을 생성합니다
2: 데이터베이스 마이그레이션 구현[1]: 마이그레이션 코드 설명: 마이그레이션에는 세 가지 방법이 있습니다up: 실행됨 migration:run(파일에 변경 방법이 없는 경우) down: in migration:rollback 시 실행(파일에 변경 방법이 없는 경우)change: migration:run 및 마이그레이션 시 실행: 롤백(이 메소드가 존재하면 up, down은 실행되지 않습니다)일반적으로 Illigate 파일의 변경 메소드는 삭제, up 메소드는 테이블 추가 및 업데이트 작업을 구체적으로 배치하고 down 메소드는 작업을 배치합니다. 테이블 삭제 및 필드 삭제 (1) 새 테이블:// create the table $table = $this->table('user', ['id' => 'user_id', 'comment' => '用户表', 'engine' => 'MyISAM', '']); $table->addColumn('user_name', 'string', ['limit' => 15, 'default' => '', 'comment' => '用户名']) ->addColumn('password', 'string', ['limit' => 15, 'default' => '', 'comment' => '密码',]) ->addColumn('status', 'boolean', ['limit' => 1, 'default' => 0, 'comment' => '状态']) ->addIndex(['user_name'], ['unique' => true])//为user_name创建索引并设置唯一(唯一索引) ->addTimestamps()//默认生成create_time和update_time两个字段 ->create();
$this->table('user') ->addColumn('test', 'string', ['limit' => 15, 'default' => '', 'comment' => '测试'])//在user表中增加一个test字段 ->update();
$this->table('user')->drop();
$this->table('user') ->removeColumn('test')//删除user表中的test字段 ->save();
migration 일반적으로 사용되는 세 가지 명령은 다음과 같습니다.
php think migrate:create CreateUser #创建一个迁移类 php think migrate:run #执行迁移 php think migrate:rollback #迁移回滚
위 내용은 thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!