Comment insérer des données brutes dans la base de données MySQL dans Laravel ?

PHPz
Libérer: 2023-09-09 16:10:02
avant
941 Les gens l'ont consulté

Comment insérer des données brutes dans la base de données MySQL dans Laravel ?

Vous pouvez utiliser l'outil de création de requêtes pour insérer des données brutes dans la table MySQL. Vous devez inclure la classe : IlluminateSupportFacadesDB ou utiliser une base de données

 ;

Supposons que nous créions une table nommée étudiants en utilisant l'instruction CREATE comme indiqué ci-dessous -

CREATE TABLE students(
   id          INTEGER      NOT NULL   PRIMARY KEY,
   name        VARCHAR(15)  NOT NULL,
   email       VARCHAR(20)  NOT NULL,
   created_at  VARCHAR(27),
   updated_at  VARCHAR(27),
   address     VARCHAR(30)  NOT NULL,
   age         INTEGER
);
Copier après la connexion

Supposons que nous ayons rempli le tableau ci-dessus avec les données suivantes -

+----+---------------+------------------+---------------------+---------------------+---------+------+
| id |    name       |      email       |      created_at     |     updated_at      | address | age  |
+----+---------------+------------------+---------------------+---------------------+---------+------+
| 1  | Siya Khan     | siya@gmail.com   | 2022-05-01 13:45:55 | 2022-05-01 13:45:55 | xyz     | 20   |
| 2  | Rehan Khan    | rehan@gmail.com  | 2022-05-01 13:49:50 | 2022-05-01 13:49:50 | xyz     | 18   |
| 3  | Rehan Khan    | rehan@gmail.com  | NULL                | NULL                | testing | 20   |
| 4  | Rehan         | rehan@gmail.com  | NULL                | 2022-05-29 14:17:02 | abcd    | 50   |
| 5  | Nidhi Agarwal | nidhi@gmail.com  | NULL                | NULL                | abcd    | 20   |
| 6  | Ashvik Khanna | ashvik@gmail.com | NULL                | NULL                | oooo    | 16   |
| 7  | Viraj Desai   | viraj@gmail.com  | NULL                | NULL                | test    | 18   |
| 8  | Priya Singh   | priya@gmail.com  | NULL                | NULL                | test123 | 20   |
| 9  | Arbaaz        | arbaaz@gmail.com | 2022-05-29 14:11:09 | 2022-05-29 14:11:09 | testing | 35   |
| 10 |Niketan Vaahi  |niketan@gmail.com | NULL                | NULL                | testing | 35   |
+----+---------------+------------------+---------------------+---------------------+---------+------+
Copier après la connexion

Exemple 1

Utilisez la méthode insert()

La méthode

insert() ajoutera un enregistrement dans la table donnée. Il prend l'entrée sous forme de tableau contenant des données dans des paires clé/valeur, où la clé est le nom de la colonne et la valeur est la valeur à attribuer à la colonne. Le code est le suivant -

DB::table('students')->insert([
   'name' => 'Niya Sethi',
   'email' => 'niya@gmail.com',
   'age'=>'20',
   'address'=>'Mumbai'
]);
Copier après la connexion

L'extrait de code ci-dessus ajoute les lignes suivantes à la table students.

11, 'Niya Sethi', 'niya@gmail.com', 'Mumbai', 20
Copier après la connexion

Exemple 2

En utilisant la méthode insert() de façade de base de données, vous pouvez insérer plusieurs enregistrements comme indiqué ci-dessous -

DB::table('students')->insert([
   ['name' => 'Peter', 'email' => 'peter@gmail.com', 'age'=>'20', 'address'=>'Chicago'],
   ['name' => 'David', 'email' => 'david@gmail.com', 'age'=>'20', 'address'=>'London'],
   ['name' => 'Niraj', 'email' => 'niraj@gmail.com', 'age'=>'20', 'address'=>'Mumbai'],
   ['name' => 'Sumit', 'email' => 'sumit@gmail.com', 'age'=>'20', 'address'=>'Kerala']
]);
Copier après la connexion

Le code complet est -

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class StudentController extends Controller {
   public function index() {
      DB::table('students')->insert([
         ['name' => 'Peter', 'email' => 'peter@gmail.com', 'age'=>'20', 'address'=>'Chicago'],
         ['name' => 'David', 'email' => 'david@gmail.com', 'age'=>'20', 'address'=>'London'],
         ['name' => 'Niraj', 'email' => 'niraj@gmail.com', 'age'=>'20', 'address'=>'Mumbai'],
         ['name' => 'Sumit', 'email' => 'sumit@gmail.com', 'age'=>'20', 'address'=>'Kerala']
      ]);
   }
}
Copier après la connexion

L'extrait de code ci-dessus ajoute les lignes suivantes au tableau students -

14, 'Peter', 'peter@gmail.com', 'Chicago', 20 
15, 'David', 'david@gmail.com', 'London', 20 
16, 'Niraj', 'niraj@gmail.com', 'Mumbai', 20 
17, 'Sumit', 'sumit@gmail.com', 'Kerala', 20
Copier après la connexion

Exemple 3

Nous pouvons également utiliser les valeurs originales insérées dans le tableau. Le code est le suivant -

DB::insert('insert into students (name, email, age,address) values (?, ?, ?, ?)',
   ['Niyati', 'niyati@gmail.com', 19, 'Pune']);
Copier après la connexion

Voici l'exemple complet d'insertion de valeurs originales dans le tableau -

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class StudentController extends Controller {
   public function index() {
      DB::insert('insert into students (name, email, age,address) values (?, ?, ?, ?)',
      ['Niyati', 'niyati@gmail.com', 19, 'Pune']);
   }
}
Copier après la connexion

Sortie

L'extrait de code ci-dessus ajoute les lignes suivantes à la table students

12, 'Niyati', 'niyati@gmail.com', 'Pune', 19
Copier après la connexion

Exemple 4

Nous pouvons utiliser un étudiant modèle éloquent pour insérer des données dans un tableau. Un modèle Eloquent est une classe unique créée pour chaque table, et la classe de modèle associée à cette table est utilisée pour toutes les requêtes liées à cette table.

Le code est -

$student = new Student;
$student->name = 'Amar';
$student->email = 'amar@gmail.com';
$student->age = 25;
$student->address = 'Lucknow';
$student->save();
Copier après la connexion

L'exemple suivant insère des données brutes dans une table dans MySQL -

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Student;

class StudentController extends Controller {
   public function index() {
      $student = new Student;
      $student->name = 'Amar';
      $student->email = 'amar@gmail.com';
      $student->age = 25;
      $student->address = 'Lucknow';
      $student->save();
   }
}
Copier après la connexion

Sortie

Après avoir exécuté le code ci-dessus, les lignes suivantes seront ajoutées au tableau Étudiants -

13, 'Amar', 'amar@gmail.com', 'Lucknow', 25
Copier après la connexion

Enfin, si vous validez la table dans MySQL, vous pouvez voir tous les enregistrements comme indiqué ci-dessous -

mysql> select * from students;
+----+---------------+-------------------+---------------------+---------------------+---------+------+
| id |    name       |       email       |      created_at     |      updated_at     | address | age  |
+----+---------------+-------------------+---------------------+---------------------+---------+------+
| 1  | Siya Khan     | siya@gmail.com    | 2022-05-01 13:45:55 | 2022-05-01 13:45:55 | Xyz     | 20   |
| 2  | Rehan Khan    | rehan@gmail.com   | 2022-05-01 13:49:50 | 2022-05-01 13:49:50 | Xyz     | 18   |
| 3  | Rehan Khan    | rehan@gmail.com   | NULL                | NULL                | testing | 20   |
| 4  | Rehan         | rehan@gmail.com   | NULL                | NULL                | abcd    | 15   |
| 5  | Nidhi Agarwal | nidhi@gmail.com   | NULL                | NULL                | abcd    | 20   |
| 6  | Ashvik Khanna | ashvik@gmail.com  | NULL                | NULL                | oooo    | 16   |
| 7  | Viraj Desai   | viraj@gmail.com   | NULL                | NULL                | test    | 18   |
| 8  | Priya Singh   | priya@gmail.com   | NULL                | NULL                | test123 | 20   |
| 9  | Arbaaz        | arbaaz@gmail.com  | 2022-05-29 14:11:09 | 2022-05-29 14:11:09 | testing | 35   |
| 10 | Niketan Vaahi | niketan@gmail.com | NULL                | NULL                | testing | 35   |
| 11 | Niya Sethi    | niya@gmail.com    | NULL                | NULL                | Mumbai  | 20   |
| 12 | Niyati        | niyati@gmail.com  | NULL                | NULL                | Pune    | 19   |
| 13 | Amar          | amar@gmail.com    | NULL                | NULL                | Lucknow | 25   |
| 14 | Peter         | peter@gmail.com   | NULL                | NULL                | Chicago | 20   |
| 15 | David         | david@gmail.com   | NULL                | NULL                | London  | 20   |
| 16 | Niraj         | niraj@gmail.com   | NULL                | NULL                | Mumbai  | 20   |
| 17 | Sumit         | sumit@gmail.com   | NULL                | NULL                | Kerala  | 20   |
+----+---------------+-------------------+---------------------+---------------------+---------+------+
17 rows in set (0.00 sec)
Copier après la connexion

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!

Étiquettes associées:
source:tutorialspoint.com
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!