Home > PHP Framework > Laravel > How to use laravel db class

How to use laravel db class

王林
Release: 2023-05-26 14:11:37
Original
1031 people have browsed it

Laravel is a popular PHP web framework that is favored by developers for its elegant syntax, convenient development and efficient performance. In Laravel development, database operations are particularly important. Laravel provides a DB class for operating databases. This article will introduce the use of Laravel DB class in detail.

  1. Basic usage of DB class

In Laravel development, we can easily perform database operations through the DB class. Before using the DB class, you need to introduce the namespace in the controller:

use IlluminateSupportFacadesDB;
Copy after login

Through the DB class, we can perform operations such as query, insert, update, delete, etc. The following is an example of a database query:

$users = DB::table('users')->get();
Copy after login

The above example is to obtain the records of all users from the users table. If you want to get a single record, you can use the following code:

$user = DB::table('users')->where('name', 'John')->first();
Copy after login

The above code will get the first record named John from the users table.

  1. The query constructor of the DB class

The key to the DB class is the query constructor. The query builder can build queries through chain methods, which is very flexible and convenient. The following are some examples:

a. where condition query

$users = DB::table('users')->where('name', '=', 'John')->get();
Copy after login

The above example queries the records whose name is equal to 'John' from the users table. The condition type can be specified through the second parameter, such as '>', '<', '>=', '<=', etc.

b. orWhere condition query

$users = DB::table('users')->where('name', '=', 'John')->orWhere('name', '=', 'Mary')->get();
Copy after login

The above example is to query the records whose name is equal to 'John' or 'name' is equal to 'Mary' from the users table.

c. Multiple Where condition query

$users = DB::table('users')->where([
    ['status', '=', '1'],
    ['name', '<>', 'John']
])->get();
Copy after login

The above example is to query the records whose status is equal to 1 and whose name is not equal to John from the users table.

d. whereBetween condition query

$users = DB::table('users')->whereBetween('votes', [1, 100])->get();
Copy after login

The above example is to query the records with votes between 1-100 from the users table.

e. whereIn conditional query

$users = DB::table('users')->whereIn('id', [1, 2, 3])->get();
Copy after login

The above example is to query the records with IDs 1, 2, and 3 from the users table.

f. orderBy sorting query

$users = DB::table('users')->orderBy('name', 'desc')->get();
Copy after login

The above example is to query the records in the users table in reverse order by name.

  1. Insertion, update, and delete operations of DB class

The Laravel DB class not only supports query operations, but also supports insert, update, and delete operations. The following are some examples:

a. Data insertion

DB::table('users')->insert([
    'email' => 'john@example.com',
    'name' => 'John Doe'
]);
Copy after login

The above example inserts a record with email address john@example.com and name John Doe into the users table.

b. Data update

DB::table('users')->where('id', 1)->update(['votes' => 1]);
Copy after login

The above example updates the number of votes of the user with id 1 to 1.

c. Data deletion

DB::table('users')->where('votes', '<', 100)->delete();
Copy after login

The above example deletes all users with votes less than 100.

  1. DB class transaction operations

During data operations, accidents are likely to occur, such as errors when inserting data. At this time, the transaction needs to be rolled back to ensure data integrity. Laravel DB classes support transaction operations. Here is an example:

DB::transaction(function () {
    DB::table('users')->update(['votes' => 1]);
    DB::table('posts')->delete();
});
Copy after login

The above example is a simple transaction that updates the vote count of all users in the users table to 1 and deletes all records in the posts table. If an error occurs during a transaction, it is automatically rolled back and data integrity is maintained.

  1. Connection and table name of DB class

In most cases, Laravel DB class will automatically connect to the default database and table, but in some cases, We need to specify the connection and table name manually. The following is an example:

$users = DB::connection('connection-1')->table('users')->get();
Copy after login

The above example displays all data in the users table in the first connection. We can configure multiple connection information in the config/database.php file.

  1. Conclusion

Through the Laravel DB class, we can easily perform database operations. From simple data queries to complex transaction operations, Laravel DB classes provide corresponding methods and syntax. In actual development, we can use query builders, transactions, and connections in combination as needed to achieve flexible and efficient data operations.

The above is the detailed content of How to use laravel db class. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template