laravel 通過sql查詢

laravel是一個(gè)流行的 php框架,可以讓開發(fā)人員快速構(gòu)建高效、可擴(kuò)展的 web 應(yīng)用程序。當(dāng)你需要從數(shù)據(jù)庫中查詢數(shù)據(jù)時(shí),在laravel中使用sql查詢很常見。本文將介紹如何在laravel中執(zhí)行sql查詢。

準(zhǔn)備工作

在開始利用Laravel執(zhí)行SQL查詢之前,我們需要先配置好數(shù)據(jù)庫連接信息。在Laravel中,配置數(shù)據(jù)庫連接信息很簡單,只需要打開 .env文件并修改以下信息即可:

DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database_name DB_USERNAME=username DB_PASSWORD=password

我們只需要修改這些參數(shù),Laravel將會(huì)自動(dòng)連接到我們的數(shù)據(jù)庫,并使用我們提供的參數(shù)進(jìn)行連接。現(xiàn)在,我們已經(jīng)準(zhǔn)備好開始執(zhí)行SQL查詢了。

執(zhí)行查詢

有幾種方法可以在Laravel中執(zhí)行SQL查詢。以下是一些常用的方法。

使用 DB 類

Laravel的DB類提供了一系列可用于執(zhí)行 SQL查詢的方法。首先,我們需要在我們的控制器或模型中引入DB類:

use IlluminateSupportFacadesDB;

一旦我們引入了 DB 類,我們就可以使用以下方法來執(zhí)行 SQL 查詢。

查詢

DB 類的 select() 方法可以用于查詢數(shù)據(jù)。以下是一個(gè)示例:

$data = DB::select('SELECT * FROM users');

在上面的示例中,我們查詢了 users表中的所有數(shù)據(jù),并將結(jié)果存儲(chǔ)在 $data 變量中。你還可以使用參數(shù)來動(dòng)態(tài)地構(gòu)建查詢:

$id = 1; $data = DB::select('SELECT * FROM users WHERE id = ?', [$id]);

在上面的示例中,我們使用了一個(gè)占位符 ?來表示 $id 參數(shù)的位置,然后將該參數(shù)傳遞給 select() 方法的第二個(gè)參數(shù)。

插入

DB 類的 insert() 方法可以用于插入數(shù)據(jù)。以下是一個(gè)示例:

$name = 'John Doe'; $email = 'johndoe@example.com'; DB::insert('INSERT INTO users (name, email) VALUES (?, ?)', [$name, $email]);

在上面的示例中,我們向 users 表中插入了一條數(shù)據(jù)。

更新

DB 類的 update() 方法可以用于更新數(shù)據(jù)。以下是一個(gè)示例:

$id = 1; $email = 'johndoe@example.com'; DB::update('UPDATE users SET email = ? WHERE id = ?', [$email, $id]);

在上面的示例中,我們將 users 表中 id 為1的用戶的email屬性更新為 johndoe@example.com。

刪除

DB 類的 delete() 方法可以用于刪除數(shù)據(jù)。以下是一個(gè)示例:

$id = 1; DB::delete('DELETE FROM users WHERE id = ?', [$id]);

在上面的示例中,我們將 users 表中id為1的用戶刪除。

使用 Query Builder

Laravel提供了另一種執(zhí)行 SQL查詢的方式,即Query Builder。Query Builder 是一種鏈?zhǔn)讲樵冋Z法,可以用于構(gòu)建復(fù)雜的查詢語句。

查詢

以下是使用 Query Builder 查詢數(shù)據(jù)的示例:

$data = DB::table('users')->get();

在上面的示例中,我們查詢了 users 表中的所有數(shù)據(jù),并將結(jié)果存儲(chǔ)在 $data 變量中。你還可以使用鏈?zhǔn)椒椒▌?dòng)態(tài)地構(gòu)建查詢:

$data = DB::table('users') ->select('name', 'email') ->where('id', '=', 1) ->get();

在上面的示例中,我們使用 select() 方法選擇查詢結(jié)果中的列,使用 where() 方法添加 WHERE 子句。

插入

以下是使用 Query Builder 插入數(shù)據(jù)的示例:

$name = 'John Doe'; $email = 'johndoe@example.com'; DB::table('users')->insert([    'name' => $name,    'email' => $email ]);

在上面的示例中,我們向 users 表中插入了一條數(shù)據(jù)。

更新

以下是使用 Query Builder 更新數(shù)據(jù)的示例:

$email = 'johndoe@example.com'; DB::table('users')    ->where('id', 1)    ->update(['email' => $email]);

在上面的示例中,我們將 users 表中id為1的用戶的email屬性更新為 johndoe@example.com。

刪除

以下是使用 Query Builder 刪除數(shù)據(jù)的示例:

DB::table('users')->where('id', 1)->delete();

在上面的示例中,我們將 users 表中id為1的用戶刪除。

總結(jié)

在本文中,我們介紹了如何在Laravel中執(zhí)行SQL查詢。使用DB類或Query Builder,我們可以輕松地查詢、插入、更新和刪除數(shù)據(jù)。使用Laravel的這些功能,可以讓我們更加高效、可靠的構(gòu)建 Web 應(yīng)用程序。

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