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

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

풀어 주다: 2020-05-27 09:08:28
앞으로
4114명이 탐색했습니다.

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으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿