Création de la base de données pour une application Laravel

Laravel supporte différents SGBD :

  • MySQL
  • Postgres
  • SQLite
  • SQL Server

Nous allons travailler avec MySQL.

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.

▼Publicité

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 utf8 COLLATE utf8_unicode_ci;

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ère 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

Merci de partager ! Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInPin on PinterestShare on StumbleUponEmail this to someone
Catégories

Laisser un commentaire

9 + 2 =