Formation PUB030 : Laravel, 2019 Création de la base de données et de ses tables

12.1 Création de la base de données pour une application Laravel (CREATE DATABASE et fichier .env)


Laravel supporte différents SGBD :

  • MySQL
  • Postgres
  • SQLite
  • SQL Server

Nous allons travailler avec MySQL.

Création de la base de données

Il est inutile de vous lancer à tête perdue dans votre SGBD préféré pour créer vos tables et y entrer vos données initiales. Laravel a tout prévu pour vous faciliter la tâche :

  • des fichiers de migration pour créer les tables;
  • des fichiers de seeds pour insérer les données initiales et les données de test.

Seule la base de données vide devra être créée manuellement. Une requête SQL permet d'y arriver. Cette requête peut être lancée dans MySQL Workbench, dans PhpStorm ou à la ligne de commande MySQL :

MySQL

CREATE DATABASE mabd DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Ajustement du fichier .env

Pour indiquer à Laravel quel SGBD est utilisé et quel est le nom de la base de données, il faut éditer le fichier .env situé à la racine du projet.

Ex :

Fichier .env (PHP)

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=mabd

DB_USERNAME=homestead

DB_PASSWORD=secret

Les configurations ainsi éditées seront lues par le fichier config\database.php, qui définit les connections pour les différents SGBD.

Note : le fichier .env ne doit pas faire partie des fichiers suivis par Git. Il contient de l'information sensible et son contenu sera probablement différent d'un environnement à l'autre.

Laravel a prévu un fichier .env.example pour que les gens qui récupèrent le code à partir d'un dépôt Git puissent avoir la structure de base de ce fichier.

Pour plus d'information

« MySQLi vs PDO vs MySQL Difference, Performance Benchmark and Security Comparison in 2016 and 2017 ». PHP Classes. https://www.phpclasses.org/blog/post/521-mysqli-vs-pdo-vs-mysql.html

« Database: Getting Started ». Laravel. https://laravel.com/docs/master/database

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre