Query Builder trong Laravel 8

Nếu như trong PHP thuần khi kết nối cơ sở dữ liệu bạn sẽ phải viết khá nhiều mã. Nhưng với Laravel Framework mọi thứ trở nên đơn giản hơn rất nhiều. Query Builder sẽ giúp giải quyết các vấn đề liên quan tới Database. Bài viết này sẽ giúp bạn hiểu hơn và vận dụng hiệu quả cho dự án của mình.

Hướng dẫn sử dụng Query Builder

Điều kiện cần thiết để thực hành với Query Builder đó là bạn cần phải kết nối Database. Hãy đọc lại bài số 1 tại đây.

Tiếp theo đó cũng cần phải tạo Controller , và đọc lại Bài 4: Lấy dữ liệu từ Database bằng Model trong Laravel.

Bắt tay vào thực hành nào!

Mình sẽ khởi tạo một Controller tên là TestController.php bằng cách sử dụng Migration Laravel.

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\TestModel;

class TestController extends Controller
{
    public function home(){
        $result = TestModel::getData();
        var_dump('<pre>');
        var_dump($result);
        var_dump('</pre>');
    }
}

Trong file bạn lưu ý cần phải sử dụng use App\Models\TestModel; để gọi TestModel.php

Một tập tin TestModel.php với nội dung

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use DB;

class TestModel extends Model
{
    public static function getData(){
    $value=DB::table('admin')->get();
    return $value;
  }
}

Trong file này cũng phải sử dụng Class DB với lệnh use DB; thì tập tin mới chạy được.

Sau khi thêm Route tại web.php là

Route::get('home','App\Http\Controllers\[email protected]');

Mình sẽ gõ đường dẫn http://localhost/thu_muc_laravel/public/home để chạy. Kết quả là

query-builder

Câu lệnh Query Builder trong Laravel

Sau đây sẽ là một vài lệnh thường được sử dụng:

1. Lấy tất cả dữ liệu của một bảng

DB::table('admin')->get();

2. Select cột trong bảng

Lựa chọn cột được chỉ định

DB::table('admin')->select('username', 'password')->get();

3. Select với điều kiện

Trường hợp này thường sử dụng để kiểm tra đăng nhập

DB::table('admin')->where('username', 'password')->get();

4. Truy vấn tìm kiếm trong bảng

DB::table('admin')->where('title', 'like', 'tu-khoa')->get();

Ví dụ:

DB::table('posts')->where('title', 'like', '%Laravel%')->get();

5. Join bảng (Table)

Đọc lại bài viết Join nhiều bảng trong Laravel để rõ hơn về Join.

$data = DB::table('posts')
           ->join('category', 'cat_id', '=', 'category.id')
           ->select('*')
           ->get();

6. Thêm, sửa, xóa và update

Trong bài viết Code thêm, sửa, xóa, update trong Laravel bạn sẽ được tìm hiểu chi tiết về các chức năng đó.

Với những kiến thức về Query Builder trong Laravel 8 kể trên bạn đã hoàn toàn có thể làm việc với Database tại Model một cách dễ dàng. Hi vọng với bài này bạn đã có một cái nhìn tổng quan nhất về cách thức vận hành của MVC.

Cùng chủ đề

Chuyên mục:
Tag:

Bình luận!

Xin lưu ý rằng tất cả các bình luận đều được kiểm duyệt theo chính sách bảo mật và tất cả các liên kết đều là nofollow. KHÔNG sử dụng từ khóa trong trường tên. Hãy để lại một cuộc trò chuyện cá nhân và ý nghĩa. *