>  기사  >  PHP 프레임워크  >  thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.

thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.

尚
앞으로
2020-05-27 09:08:284064검색

thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.

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

다음은 마이그레이션이 성공적으로 설치되었음을 의미합니다

thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.

둘: topthink/think-migration을 사용하여 데이터베이스 마이그레이션 구현

1: 마이그레이션 클래스 생성

명령줄에서 실행

php think migrate:create CreateUser

실행 후 완료되면 ./database/ migrations 디렉터리

thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.에 마이그레이션 마이그레이션 파일을 생성합니다

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();

(2) 테이블 업데이트:

$this->table('user')
    ->addColumn('test', 'string', ['limit' => 15, 'default' => '', 'comment' => '测试'])//在user表中增加一个test字段
    ->update();

(3) 테이블 삭제:

$this->table('user')->drop();

(4) 필드 삭제

$this->table('user')
    ->removeColumn('test')//删除user表中的test字段
    ->save();

[2]: 마이그레이션 명령:

migration 일반적으로 사용되는 세 가지 명령은 다음과 같습니다.

php think migrate:create CreateUser  #创建一个迁移类
php think migrate:run  #执行迁移
php think migrate:rollback #迁移回滚

권장 튜토리얼: "🎜TP5🎜"🎜

위 내용은 thinkPHP는 마이그레이션을 사용하여 데이터베이스를 마이그레이션합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제