Làm cách nào để kiểm tra kết nối DB trong laravel?

Tôi sẽ giải thích cho bạn ví dụ về cách kiểm tra kết nối cơ sở dữ liệu trong laravel. hãy thảo luận về laravel kiểm tra kết nối cơ sở dữ liệu. chúng tôi sẽ giúp bạn đưa ra một ví dụ về laravel lấy kết nối cơ sở dữ liệu. Ở đây bạn sẽ học kiểm tra laravel nếu cơ sở dữ liệu được kết nối

Bạn có thể sử dụng ví dụ này với các phiên bản laravel 6, laravel 7, laravel 8 và laravel 9

Nếu bạn cần kiểm tra kết nối cơ sở dữ liệu tồn tại hay không trong laravel. Sau đó, tôi sẽ cung cấp cho bạn hai ví dụ đơn giản sử dụng DB PDO và DB getDatabaseName[]

Laravel cung cấp nhiều công cụ hữu ích để giúp kiểm tra các ứng dụng hướng cơ sở dữ liệu của bạn dễ dàng hơn. Đầu tiên, bạn có thể sử dụng trình trợ giúp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

4 để xác nhận rằng dữ liệu tồn tại trong cơ sở dữ liệu phù hợp với một bộ tiêu chí nhất định. Ví dụ: nếu bạn muốn xác minh rằng có một bản ghi trong bảng

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

5 với giá trị

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

6 là

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

7, bạn có thể thực hiện như sau

public function testDatabase[]

// Make call to application...

$this->seeInDatabase['users', [

Tất nhiên, phương pháp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

4 và những người trợ giúp khác như vậy là để thuận tiện. Bạn có thể tự do sử dụng bất kỳ phương thức xác nhận tích hợp nào của PHPUnit để bổ sung cho các bài kiểm tra của mình

Đặt lại cơ sở dữ liệu sau mỗi lần kiểm tra

Việc đặt lại cơ sở dữ liệu của bạn sau mỗi lần kiểm tra thường hữu ích để dữ liệu từ lần kiểm tra trước không ảnh hưởng đến các lần kiểm tra tiếp theo

Sử dụng di chuyển

Một cách tiếp cận để đặt lại trạng thái cơ sở dữ liệu là khôi phục cơ sở dữ liệu sau mỗi lần kiểm tra và di chuyển nó trước lần kiểm tra tiếp theo. Laravel cung cấp một đặc điểm

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

9 đơn giản sẽ tự động xử lý việc này cho bạn. Chỉ cần sử dụng đặc điểm trên lớp kiểm tra của bạn và mọi thứ sẽ được xử lý cho bạn

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

Sử dụng giao dịch

Một cách tiếp cận khác để đặt lại trạng thái cơ sở dữ liệu là bọc từng trường hợp thử nghiệm trong một giao dịch cơ sở dữ liệu. Một lần nữa, Laravel cung cấp một đặc điểm thuận tiện

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

0 sẽ tự động xử lý việc này cho bạn

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

{note} Theo mặc định, đặc điểm này sẽ chỉ ngắt kết nối cơ sở dữ liệu mặc định trong một giao dịch. Nếu ứng dụng của bạn đang sử dụng nhiều kết nối cơ sở dữ liệu, bạn nên xác định thuộc tính

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

1 trên lớp thử nghiệm của mình. Thuộc tính này phải là một mảng tên kết nối để thực hiện các giao dịch trên

nhà máy viết

Khi kiểm tra, bạn có thể cần chèn một vài bản ghi vào cơ sở dữ liệu của mình trước khi thực hiện kiểm tra của mình. Thay vì chỉ định thủ công giá trị của từng cột khi bạn tạo dữ liệu thử nghiệm này, Laravel cho phép bạn xác định một bộ thuộc tính mặc định cho từng mô hình Eloquent của bạn bằng cách sử dụng các nhà máy mô hình. Để bắt đầu, hãy xem tệp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

2 trong đơn đăng ký của bạn. Ngay sau khi mở hộp, tệp này chứa một định nghĩa ban đầu

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

2

Trong phần Đóng, đóng vai trò là định nghĩa ban đầu, bạn có thể trả về các giá trị thử nghiệm mặc định của tất cả các thuộc tính trên mô hình. Đóng cửa sẽ nhận được một phiên bản của thư viện Faker PHP, cho phép bạn tạo các loại dữ liệu ngẫu nhiên khác nhau để thử nghiệm một cách thuận tiện

Tất nhiên, bạn có thể tự do thêm các nhà máy bổ sung của riêng mình vào tệp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

3. Bạn cũng có thể tạo các tệp nhà máy bổ sung cho từng kiểu máy để tổ chức tốt hơn. Ví dụ: bạn có thể tạo các tệp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

4 và

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

5 trong thư mục

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

6 của mình. Tất cả các tệp trong thư mục

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

7 sẽ tự động được tải bởi Laravel

Kỳ nhà máy

Các trạng thái cho phép bạn xác định các sửa đổi riêng biệt có thể được áp dụng cho các nhà máy mô hình của bạn theo bất kỳ cách kết hợp nào. Ví dụ: mô hình

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

8 của bạn có thể có trạng thái

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

9 sửa đổi một trong các giá trị thuộc tính mặc định của nó. Bạn có thể xác định các phép biến đổi trạng thái của mình bằng phương pháp

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

20

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

1

sử dụng nhà máy

Tạo mô hình

Khi bạn đã xác định các nhà máy của mình, bạn có thể sử dụng hàm toàn cầu

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

21 trong các thử nghiệm hoặc tệp gốc của mình để tạo các phiên bản mô hình. Vì vậy, chúng ta hãy xem một vài ví dụ về việc tạo mô hình. Đầu tiên, chúng ta sẽ sử dụng phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

22 để tạo các mô hình nhưng không lưu chúng vào cơ sở dữ liệu

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

4

Bạn cũng có thể tạo Bộ sưu tập gồm nhiều mô hình hoặc tạo mô hình của một loại nhất định

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

5

Áp dụng Kỳ

Bạn cũng có thể áp dụng bất kỳ trạng thái nào của mình cho các mô hình. Nếu bạn muốn áp dụng nhiều chuyển đổi trạng thái cho các mô hình, bạn nên chỉ định tên của từng trạng thái mà bạn muốn áp dụng

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

6

Ghi đè thuộc tính

Nếu bạn muốn ghi đè một số giá trị mặc định của mô hình, bạn có thể chuyển một mảng giá trị cho phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

22. Chỉ các giá trị được chỉ định sẽ được thay thế trong khi các giá trị còn lại vẫn được đặt thành giá trị mặc định của chúng theo quy định của nhà máy

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

8

Mô hình bền bỉ

Phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

24 không chỉ tạo các thể hiện của mô hình mà còn lưu chúng vào cơ sở dữ liệu bằng cách sử dụng phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

25 của Eloquent

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

1

Bạn có thể ghi đè các thuộc tính trên mô hình bằng cách chuyển một mảng tới phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

24

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

0

Các mối quan hệ

Trong ví dụ này, chúng tôi sẽ đính kèm một mối quan hệ với một số mô hình đã tạo. Khi sử dụng phương thức

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

24 để tạo nhiều mô hình, một phiên bản bộ sưu tập Eloquent được trả về, cho phép bạn sử dụng bất kỳ chức năng thuận tiện nào do bộ sưu tập cung cấp, chẳng hạn như

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

28

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

1

Quan hệ & đóng thuộc tính

Bạn cũng có thể đính kèm các mối quan hệ với các mô hình bằng cách sử dụng thuộc tính Đóng trong định nghĩa ban đầu của mình. Ví dụ: nếu bạn muốn tạo một phiên bản

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

8 mới khi tạo một

use Illuminate\Foundation\Testing\WithoutMiddleware;

use Illuminate\Foundation\Testing\DatabaseMigrations;

use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase

* A basic functional test example.

public function testBasicExample[]

10, bạn có thể thực hiện như sau

Làm cách nào để kiểm tra kết nối cơ sở dữ liệu của tôi?

Để kiểm tra kết nối với cơ sở dữ liệu của bạn, hãy chạy cổng tên máy chủ telnet trên máy chủ Looker của bạn . Ví dụ: nếu bạn đang chạy MySQL trên cổng mặc định và tên cơ sở dữ liệu của bạn là mydb, lệnh sẽ là telnet mydb 3306. Nếu kết nối đang hoạt động, bạn sẽ thấy một cái gì đó tương tự như thế này. Đang thử 10. 10.

Kết nối DB ở đâu trong Laravel?

Cấu hình cho các dịch vụ cơ sở dữ liệu của Laravel nằm trong cấu hình/cơ sở dữ liệu của ứng dụng của bạn. tệp cấu hình php . Trong tệp này, bạn có thể xác định tất cả các kết nối cơ sở dữ liệu của mình, cũng như chỉ định kết nối nào sẽ được sử dụng theo mặc định.

Làm cách nào để kiểm tra cơ sở dữ liệu nào được sử dụng trong Laravel?

Cấu hình cơ sở dữ liệu Laravel được lưu trữ bên trong config/database. php . Danh sách các cấu hình cơ sở dữ liệu được liệt kê bên trong tệp này.

Làm cách nào để biết cơ sở dữ liệu của tôi có được kết nối bằng php không?

Để kiểm tra kết nối cơ sở dữ liệu, bạn phải biết tên máy chủ cơ sở dữ liệu, thông thường đó là “localhost”, sau đó là tên cơ sở dữ liệu, tên người dùng và mật khẩu . Nếu DB được lưu trữ trên một máy chủ từ xa [máy chủ DB từ xa], hãy thay đổi máy chủ lưu trữ thành tên máy chủ của máy chủ đó. Ngoài ra, kết nối từ máy này với máy DB phải được bật.

Chủ Đề