如何使用Laravel進(jìn)行MySQL的增刪改查

laravel是一款基于php的web開(kāi)發(fā)框架,可以幫助開(kāi)發(fā)者更加快速、高效地進(jìn)行web應(yīng)用程序的構(gòu)建。而mysql則是一種流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),被廣泛應(yīng)用于各種web應(yīng)用程序中。

在Laravel中,我們可以輕松地進(jìn)行MySQL數(shù)據(jù)庫(kù)的增刪改查操作。接下來(lái)讓我們來(lái)詳細(xì)介紹一下如何使用Laravel進(jìn)行MySQL的增刪改查。

一、連接數(shù)據(jù)庫(kù)

Laravel默認(rèn)是使用Eloquent ORM(對(duì)象關(guān)系映射)來(lái)進(jìn)行數(shù)據(jù)庫(kù)操作的,因此我們需要配置好數(shù)據(jù)庫(kù)連接。在Laravel的配置文件中,我們只需要設(shè)置好數(shù)據(jù)庫(kù)的地址、用戶名和密碼即可。

打開(kāi)config/database.php文件,可以看到如下配置信息:

    'mysql' => [         'driver' => 'mysql',         'host' => env('DB_HOST', '127.0.0.1'),         'port' => env('DB_PORT', '3306'),         'database' => env('DB_DATABASE', 'forge'),         'username' => env('DB_USERNAME', 'forge'),         'password' => env('DB_PASSWORD', ''),         'unix_socket' => env('DB_SOCKET', ''),         'charset' => 'utf8mb4',         'collation' => 'utf8mb4_unicode_ci',         'prefix' => '',         'strict' => true,         'engine' => null,     ],

其中,我們需要設(shè)置好host、port、database、username和password等信息,分別用于指定數(shù)據(jù)庫(kù)的地址、端口號(hào)、數(shù)據(jù)庫(kù)名稱、用戶名和密碼。在Laravel中,我們通常會(huì)將這些信息放在.env文件中進(jìn)行配置。

二、創(chuàng)建模型

在Laravel中,模型代表了一個(gè)數(shù)據(jù)庫(kù)表,它將表和應(yīng)用程序代碼進(jìn)行了解耦。因此,我們需要先創(chuàng)建一個(gè)模型來(lái)操作我們的MySQL數(shù)據(jù)庫(kù)。

在Laravel中,使用artisan命令行工具創(chuàng)建一個(gè)模型非常簡(jiǎn)單。運(yùn)行以下命令:

php artisan make:model User

這將在app目錄下創(chuàng)建一個(gè)User.php文件,該文件是我們創(chuàng)建的User模型。我們可以在該文件中編寫(xiě)以下代碼:

<?php  namespace App;  use IlluminateDatabaseEloquentModel;  class User extends Model {     protected $table = 'users';     protected $fillable = ['name', 'email', 'password']; }

在上面的代碼中,我們指定了我們要操作的數(shù)據(jù)表的名稱為users。我們也可以在該模型中定義一些屬性來(lái)指定一些默認(rèn)的配置信息,比如$fillable屬性可以指定哪些字段可以進(jìn)行批量賦值,從而提高了應(yīng)用程序的安全性。

三、增刪改查

  1. 插入數(shù)據(jù)

插入數(shù)據(jù)是向數(shù)據(jù)庫(kù)表中添加一條新數(shù)據(jù)的過(guò)程。在Laravel中,我們可以使用Eloquent模型的create方法來(lái)保存一個(gè)新模型的數(shù)據(jù)。接下來(lái)我們可以看一個(gè)示例:

$user = new User; $user->name = 'John Doe'; $user->email = 'johndoe@example.com'; $user->password = 'password'; $user->save();

或者,我們也可以使用如下方式來(lái)創(chuàng)建一個(gè)新模型并保存到數(shù)據(jù)庫(kù)中:

User::create(['name' => 'John Doe', 'email' => 'johndoe@example.com', 'password' => 'password']);
  1. 更新數(shù)據(jù)

要更新數(shù)據(jù),我們可以使用模型實(shí)例上的save方法。我們可以將模型實(shí)例從數(shù)據(jù)庫(kù)中檢索出來(lái):

$user = User::find(1); $user->name = 'New Name'; $user->save();

或者我們可以一次更新多條數(shù)據(jù),方法如下:

User::where('id', 1)->update(['name' => 'New Name']);
  1. 查詢數(shù)據(jù)

我們可以使用模型實(shí)例的get方法來(lái)檢索數(shù)據(jù)庫(kù)表中的數(shù)據(jù),如下所示:

$users = User::all();

我們可以使用where方法來(lái)進(jìn)行條件查詢:

$users = User::where('name', 'John')->where('age', '>', 18)->get();
  1. 刪除數(shù)據(jù)

要?jiǎng)h除數(shù)據(jù),我們可以使用模型實(shí)例的delete方法:

$user = User::find(1); $user->delete();

或者我們也可以一次性刪除多條記錄:

User::where('votes', '<', 100)->delete();

總結(jié)

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊12 分享