Cara menggunakan fungsi migrasi pangkalan data (Migrasi) dalam rangka kerja Yii
Pengenalan:
Penghijrahan pangkalan data ialah alat yang sangat penting semasa membangun dan menyelenggara aplikasi web. Penghijrahan pangkalan data boleh membantu kami mengurus perubahan pada skema pangkalan data, membolehkan kami membuat, mengubah suai dan memadam jadual dengan mudah, serta menambah, memadam dan mengubah suai lajur. Artikel ini akan memperkenalkan cara menggunakan fungsi pemindahan pangkalan data (Migrasi) dalam rangka kerja Yii.
1. Konfigurasikan maklumat pangkalan data
Sebelum menggunakan migrasi pangkalan data, kita perlu mengkonfigurasi maklumat pangkalan data terlebih dahulu. Buka fail db.php
dalam direktori config
dalam rangka kerja Yii, dan ubah suai kod berkaitan berikut mengikut konfigurasi pangkalan data anda sendiri: config
目录下的db.php
文件,根据自己的数据库配置修改以下相关代码:
return [ // ... 'components' => [ // ... 'db' => [ 'class' => 'yiidbConnection', 'dsn' => 'mysql:host=localhost;dbname=mydatabase', 'username' => 'root', 'password' => '', 'charset' => 'utf8', ], ], ];
二、创建迁移文件
在Yii框架中,每个数据库迁移都可以是一个独立的PHP类。我们可以通过Yii的命令行工具来创建新的迁移文件。打开命令行终端,进入Yii项目的根目录,并执行以下命令:
./yii migrate/create create_table_user
上述命令将创建一个名为m210101_000000_create_table_user
的迁移文件。该文件将位于consolemigrations
目录下。
三、编写迁移代码
打开刚刚创建的迁移文件,我们可以看到其包含了两个函数:up()
和down()
。
use yiidbMigration; class m210101_000000_create_table_user extends Migration { public function up() { $this->createTable('user', [ 'id' => $this->primaryKey(), 'username' => $this->string()->notNull(), 'email' => $this->string()->notNull(), 'password' => $this->string()->notNull(), 'created_at' => $this->dateTime()->notNull(), 'updated_at' => $this->dateTime()->notNull(), ]); } public function down() { $this->dropTable('user'); } }
在up()
函数中,我们使用createTable()
方法创建了一个名为user
的表,并定义了其各个字段和数据类型。
在down()
函数中,我们使用dropTable()
方法删除了之前创建的user
表。
四、执行迁移操作
在编写完迁移代码后,我们需要执行迁移操作,将我们的数据库架构变更应用到实际的数据库中。在命令行终端中执行以下命令:
./yii migrate
上述命令将会执行所有未执行过的迁移文件,并将数据库架构变更应用到实际的数据库中。
除了执行所有未执行的迁移之外,我们还可以执行以下命令来执行一些其他特定的迁移操作:
./yii migrate/new
:显示所有未执行的迁移文件;./yii migrate/redo
:重做最后一个迁移操作;./yii migrate/down
:回滚最后一个迁移操作;./yii migrate/create
rrreeerrreee
Arahan di atas akan mencipta fail migrasi bernama m210101_000000_create_table_user
. Fail ini akan terletak dalam direktori consolemigations
.
up()
dan down()
. 🎜rrreee🎜Dalam fungsi up()
, kami menggunakan kaedah createTable()
untuk mencipta jadual bernama user
dan mentakrifkan medan individunya dan jenis data. 🎜🎜Dalam fungsi down()
, kami menggunakan kaedah dropTable()
untuk memadamkan jadual user
yang dibuat sebelum ini. 🎜🎜4. Lakukan operasi migrasi🎜Selepas menulis kod migrasi, kami perlu melakukan operasi migrasi untuk menggunakan perubahan skema pangkalan data kami pada pangkalan data sebenar. Jalankan arahan berikut dalam terminal baris arahan: 🎜rrreee🎜Arahan di atas akan melaksanakan semua fail migrasi yang tidak dilaksanakan dan menggunakan perubahan skema pangkalan data pada pangkalan data sebenar. 🎜🎜Selain melaksanakan semua migrasi tertunggak, kami juga boleh melaksanakan perintah berikut untuk melaksanakan beberapa operasi migrasi khusus lain: 🎜./yii migrate/new
: tunjukkan semua Unexecuted migration fail; 🎜./yii migrate/create
: Buat fail migrasi baharu. 🎜🎜🎜Ringkasan: 🎜Artikel ini memperkenalkan langkah asas untuk menggunakan fungsi pemindahan pangkalan data dalam rangka kerja Yii. Kami mula-mula mengkonfigurasi maklumat pangkalan data, kemudian mencipta fail migrasi dan menulis kod migrasi yang sepadan. Akhirnya, kami melakukan migrasi menggunakan alat baris arahan Yii. Dengan menggunakan ciri migrasi pangkalan data, kami boleh mengurus dan menjejaki perubahan skema pangkalan data dengan mudah. Ini adalah alat yang sangat mudah dan praktikal untuk pembangunan dan penyelenggaraan aplikasi web kami. 🎜Atas ialah kandungan terperinci Cara menggunakan fungsi migrasi pangkalan data (Migrasi) dalam rangka kerja Yii. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!