Maison > cadre php > Laravel > requête laravel via SQL

requête laravel via SQL

王林
Libérer: 2023-05-29 10:13:08
original
1606 Les gens l'ont consulté

Laravel est un framework PHP populaire qui permet aux développeurs de créer rapidement des applications Web efficaces et évolutives. Il est courant d'utiliser des requêtes SQL dans Laravel lorsque vous devez interroger des données à partir d'une base de données. Cet article explique comment exécuter des requêtes SQL dans Laravel.

Préparation

Avant de commencer à utiliser Laravel pour exécuter des requêtes SQL, nous devons d'abord configurer les informations de connexion à la base de données. Dans Laravel, la configuration des informations de connexion à la base de données est très simple. Il vous suffit d'ouvrir le fichier .env et de modifier les informations suivantes : .env文件并修改以下信息即可:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=username
DB_PASSWORD=password
Copier après la connexion

我们只需要修改这些参数,Laravel将会自动连接到我们的数据库,并使用我们提供的参数进行连接。现在,我们已经准备好开始执行SQL查询了。

执行查询

有几种方法可以在Laravel中执行SQL查询。以下是一些常用的方法。

使用 DB 类

Laravel的DB类提供了一系列可用于执行 SQL查询的方法。首先,我们需要在我们的控制器或模型中引入DB类:

use IlluminateSupportFacadesDB;
Copier après la connexion

一旦我们引入了 DB 类,我们就可以使用以下方法来执行 SQL 查询。

查询

DB 类的 select() 方法可以用于查询数据。以下是一个示例:

$data = DB::select('SELECT * FROM users');
Copier après la connexion

在上面的示例中,我们查询了 users表中的所有数据,并将结果存储在 $data 变量中。你还可以使用参数来动态地构建查询:

$id = 1;
$data = DB::select('SELECT * FROM users WHERE id = ?', [$id]);
Copier après la connexion

在上面的示例中,我们使用了一个占位符 ?来表示 $id 参数的位置,然后将该参数传递给 select() 方法的第二个参数。

插入

DB 类的 insert() 方法可以用于插入数据。以下是一个示例:

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

在上面的示例中,我们向 users 表中插入了一条数据。

更新

DB 类的 update() 方法可以用于更新数据。以下是一个示例:

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

在上面的示例中,我们将 users 表中 id 为1的用户的email属性更新为 johndoe@example.com

删除

DB 类的 delete() 方法可以用于删除数据。以下是一个示例:

$id = 1;
DB::delete('DELETE FROM users WHERE id = ?', [$id]);
Copier après la connexion

在上面的示例中,我们将 users 表中id为1的用户删除。

使用 Query Builder

Laravel提供了另一种执行 SQL查询的方式,即Query Builder。Query Builder 是一种链式查询语法,可以用于构建复杂的查询语句。

查询

以下是使用 Query Builder 查询数据的示例:

$data = DB::table('users')->get();
Copier après la connexion

在上面的示例中,我们查询了 users 表中的所有数据,并将结果存储在 $data 变量中。你还可以使用链式方法动态地构建查询:

$data = DB::table('users')
->select('name', 'email')
->where('id', '=', 1)
->get();
Copier après la connexion

在上面的示例中,我们使用 select() 方法选择查询结果中的列,使用 where() 方法添加 WHERE 子句。

插入

以下是使用 Query Builder 插入数据的示例:

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

在上面的示例中,我们向 users 表中插入了一条数据。

更新

以下是使用 Query Builder 更新数据的示例:

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

在上面的示例中,我们将 users 表中id为1的用户的email属性更新为 johndoe@example.com

删除

以下是使用 Query Builder 删除数据的示例:

DB::table('users')->where('id', 1)->delete();
Copier après la connexion

在上面的示例中,我们将 usersrrreee

Il suffit de modifier ces paramètres, et Laravel se connectera automatiquement à notre base de données et connectez-vous en utilisant les paramètres que nous fournissons. Nous sommes maintenant prêts à commencer à exécuter des requêtes SQL.

Exécuter des requêtes

Il existe plusieurs façons d'exécuter des requêtes SQL dans Laravel. Voici quelques méthodes couramment utilisées. 🎜

Utilisation de la classe DB

🎜La classe DB de Laravel fournit une série de méthodes qui peuvent être utilisées pour exécuter des requêtes SQL. Tout d'abord, nous devons introduire la classe DB dans notre contrôleur ou modèle : 🎜rrreee🎜 Une fois que nous avons introduit la classe DB, nous pouvons utiliser les méthodes suivantes pour exécuter des requêtes SQL. 🎜

Requête

🎜La méthode select() de la classe DB peut être utilisée pour interroger des données. Voici un exemple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous interrogeons toutes les données de la table users et stockons les résultats dans la variable $data. Vous pouvez également utiliser des paramètres pour créer des requêtes de manière dynamique : 🎜rrreee🎜Dans l'exemple ci-dessus, nous avons utilisé un espace réservé ? pour représenter l'emplacement du paramètre $id. Ce paramètre est puis passé au deuxième paramètre de la méthode select(). 🎜

Insert

🎜La méthode insert() de la classe DB peut être utilisée pour insérer des données. Voici un exemple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous avons inséré une donnée dans la table users. 🎜

Mise à jour

🎜La méthode update() de la classe DB peut être utilisée pour mettre à jour les données. Voici un exemple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous mettons à jour l'attribut email de l'utilisateur avec l'identifiant 1 dans la table users en johndoe@example.com. 🎜

Delete

🎜La méthode delete() de la classe DB peut être utilisée pour supprimer des données. Voici un exemple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous supprimons l'utilisateur avec l'identifiant 1 dans la table users. 🎜

Utilisation de Query Builder

🎜Laravel fournit un autre moyen d'exécuter des requêtes SQL, à savoir Query Builder. Query Builder est une syntaxe de requête chaînée qui peut être utilisée pour créer des instructions de requête complexes. 🎜

Requête

🎜Ce qui suit est un exemple d'interrogation de données à l'aide de Query Builder : 🎜rrreee🎜Dans l'exemple ci-dessus, nous interrogeons toutes les données de la table utilisateurs et stockons les résultats Dans la variable $data. Vous pouvez également utiliser des méthodes de chaînage pour créer des requêtes de manière dynamique : 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons la méthode select() pour sélectionner les colonnes dans les résultats de la requête, et where() La méthode code> code> ajoute une clause WHERE. 🎜<h4>Insérer</h4>🎜Ce qui suit est un exemple d'insertion de données à l'aide de Query Builder : 🎜rrreee🎜Dans l'exemple ci-dessus, nous avons inséré une donnée dans la table <code>users. 🎜

Mise à jour

🎜Ce qui suit est un exemple de mise à jour des données à l'aide de Query Builder : 🎜rrreee🎜Dans l'exemple ci-dessus, nous mettons à jour l'attribut email de l'utilisateur avec l'identifiant 1 dans le users tableau pour johndoe@example.com. 🎜

Supprimer

🎜Ce qui suit est un exemple de suppression de données à l'aide de Query Builder : 🎜rrreee🎜Dans l'exemple ci-dessus, nous supprimons l'utilisateur avec l'identifiant 1 dans la table users. 🎜🎜Résumé🎜🎜Dans cet article, nous avons présenté comment exécuter des requêtes SQL dans Laravel. À l'aide de classes DB ou de Query Builder, nous pouvons facilement interroger, insérer, mettre à jour et supprimer des données. L'utilisation de ces fonctionnalités de Laravel nous permet de créer des applications Web de manière plus efficace et fiable. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal