Laravel是一個非常流行的PHP框架,且在web應(yīng)用程序開發(fā)方面提供了很多便利。Laravel支持許多數(shù)據(jù)庫技術(shù),包括MySQL、PostgreSQL和SQLite。本篇文章將介紹如何使用Laravel與MySQL數(shù)據(jù)庫進行交互,主要包括以下幾個步驟:
- 安裝MySQL創(chuàng)建數(shù)據(jù)庫配置Laravel環(huán)境變量創(chuàng)建遷移運行遷移安裝MySQL
首先要在本地計算機上安裝MySQL,可以使用官方的MySQL安裝程序,或者使用類似XAMPP的軟件包。為了使用Laravel,需要將MySQL的安裝路徑添加到計算機的環(huán)境變量中。在Windows系統(tǒng)上,可以這樣操作:
1)打開控制面板 -> 系統(tǒng)與安全 -> 系統(tǒng) -> 高級系統(tǒng)設(shè)置 -> 環(huán)境變量
2)在“系統(tǒng)變量”中,找到“Path”,并將MySQL的bin文件夾路徑添加到末尾。例如:
C:Program FilesMySQLMySQL Server 8.0in;
登錄后復(fù)制
- 創(chuàng)建數(shù)據(jù)庫
使用MySQL客戶端程序(比如MySQL命令行客戶端或phpMyAdmin)創(chuàng)建一個新的數(shù)據(jù)庫,例如:
CREATE DATABASE laravel_db;
登錄后復(fù)制
接下來,需要在Laravel項目中設(shè)置數(shù)據(jù)庫連接。
- 配置Laravel環(huán)境變量
使用文本編輯器打開Laravel項目的.env
文件,這是Laravel使用的環(huán)境變量文件。在該文件中,可以設(shè)置應(yīng)用程序所需的各種變量和參數(shù),包括數(shù)據(jù)庫連接信息。
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel_db DB_USERNAME=root DB_PASSWORD=
登錄后復(fù)制
這些參數(shù)比較容易理解。DB_CONNECTION
指定使用哪種數(shù)據(jù)庫系統(tǒng),例如MySQL;DB_HOST
、DB_PORT
和DB_DATABASE
指定連接MySQL的主機名、端口號和數(shù)據(jù)庫名稱,而DB_USERNAME
和DB_PASSWORD
則是連接用戶名和密碼。必須確保這些值與MySQL的配置相匹配,才可以成功連接到數(shù)據(jù)庫。
- 創(chuàng)建遷移
遷移是Laravel中數(shù)據(jù)表的創(chuàng)建、修改和刪除的機制。通過遷移,可以在任何環(huán)境中完成這些操作,并輕松地將這些更改應(yīng)用于不同的服務(wù)器。
在Laravel中,遷移存儲在database/migrations目錄中??梢允褂肁rtisan命令行工具創(chuàng)建新的遷移文件。比如,下面這個命令將創(chuàng)建一個創(chuàng)建users表的遷移:
php artisan make:migration create_users_table
登錄后復(fù)制
這將在migrations目錄中創(chuàng)建一個新文件,名為2020_07_30_135314_create_users_table.php
(時間戳可能會有所不同)。打開該文件可以看到Laravel提供了一些模板代碼。
<?php use IlluminateDatabaseMigrationsMigration; use IlluminateDatabaseSchemaBlueprint; use IlluminateSupportFacadesSchema; class CreateUsersTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('users'); } }
登錄后復(fù)制
這段代碼在up()方法中定義了一個名為users的表,并指定了該表的各個字段。id()方法定義了主鍵,name()和email()方法定義了普通字符串字段,timestamp()方法定義了時間戳,rememberToken()方法定義了用于“記住我”機制的token字段,最后一個timestamps()方法定義了兩個時間戳字段(created_at和updated_at)。
可以根據(jù)需要修改這個模板代碼,例如添加其他字段或修改現(xiàn)有字段。一旦準(zhǔn)備好了遷移,就可以運行它。
- 運行遷移
為了在數(shù)據(jù)庫中創(chuàng)建users表,需要運行Laravel的遷移機制??梢允褂孟旅娴腁rtisan命令行工具運行指定的遷移文件:
php artisan migrate --path=/database/migrations/create_users_table.php
登錄后復(fù)制
該命令將打印輸出遷移的狀態(tài),包括執(zhí)行成功還是失敗,以及對那些表做了實際的修改。
現(xiàn)在,就可以在Laravel中使用users表了。可以在控制器、模型或其他部分中使用Eloquent對象,將數(shù)據(jù)插入表中、查詢和查詢表中的數(shù)據(jù)、更新數(shù)據(jù)等。
總結(jié)
以上就是Laravel后端數(shù)據(jù)庫搭建的流程。在實際使用時,還需要更深入地了解Eloquent的使用方法,以及如何與MySQL、PostgreSQL等數(shù)據(jù)庫系統(tǒng)進行更高級和更復(fù)雜的交互。如果使用Laravel構(gòu)建一個大型的web應(yīng)用程序,這些知識點都是非常重要的。
以上就是laravel后端數(shù)據(jù)庫搭建流程的詳細(xì)內(nèi)容,更多請關(guān)注www.xfxf.net其它相關(guān)文章!