數(shù)據(jù)庫(kù)遷移是數(shù)據(jù)庫(kù)的版本管理,要使用數(shù)據(jù)庫(kù)遷移,需要在.env文件中連接好數(shù)據(jù)庫(kù)(不多說(shuō))。laravel本身已經(jīng)存在user表和password_resets表的遷移了,因此,執(zhí)行
便會(huì)在數(shù)據(jù)庫(kù)中創(chuàng)建好user表、password_resets表和migrations表。migrations表是版本記錄表。
命令執(zhí)行的其實(shí)是 database\migration 下的遷移文件。遷移文件中調(diào)用的方法會(huì)替我們執(zhí)行數(shù)據(jù)庫(kù)操作(建表)。每個(gè)文件的命名對(duì)應(yīng)遷移創(chuàng)建的時(shí)間和遷移的表名稱。
現(xiàn)在我們要添加自己的遷移表。
創(chuàng)建遷移
方法一:創(chuàng)建數(shù)據(jù)模型的時(shí)候加上 -m ,例如:
php artisan make:model Models/Moment -m
就會(huì)在 database/migrations 下看到新建的遷移文件。打開(kāi)文件,主要有 up 和 down 方法。
當(dāng)我們運(yùn)行遷移時(shí),up 方法會(huì)被調(diào)用;
當(dāng)我們回滾遷移時(shí),down 方法會(huì)被調(diào)用。
方法二:
php artisan make:migration create_moments_table
其中 “moments” 就是要?jiǎng)?chuàng)建的表名,這里要寫(xiě)你自己的表名。
創(chuàng)建表
在up方法中,我們編寫(xiě)創(chuàng)建表的語(yǔ)句:
Schema::create('moments', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id');
$table->string('title');
$table->string('content');
$table->timestamps();
});
保存后執(zhí)行 php artisan migrate ,會(huì)創(chuàng)建5個(gè)字段的article表。
修改表
方法一:修改遷移文件,執(zhí)行命令
php artisan migrate:refresh
方法二:如果要修改表,新建一個(gè)遷移文件:
php artisan make:migration alter_moments_table
其中 “moments” 就是要修改的表名,這里要寫(xiě)你自己的表名。
在 up 方法中:
Schema::table('moments', function (Blueprint $table) {
$table->string('test');
});
與創(chuàng)建表的區(qū)別是,create 方法改成 table 方法。
以上這篇Laravel5.5 數(shù)據(jù)庫(kù)遷移:創(chuàng)建表與修改表示例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Laravel框架數(shù)據(jù)庫(kù)遷移操作實(shí)例詳解
- 關(guān)于laravel 數(shù)據(jù)庫(kù)遷移中integer類(lèi)型是無(wú)法指定長(zhǎng)度的問(wèn)題
- Laravel實(shí)現(xiàn)數(shù)據(jù)庫(kù)遷移與支持中文的填充
- Laravel 的數(shù)據(jù)庫(kù)遷移的方法
- Laravel 5框架學(xué)習(xí)之?dāng)?shù)據(jù)庫(kù)遷移(Migrations)
- 解決Laravel5.x的php artisan migrate數(shù)據(jù)庫(kù)遷移創(chuàng)建操作報(bào)錯(cuò)SQLSTATE[42000]