Bonjour à tous, je suis actuellement en train de développer une application symfony et je voudrais créer mes entités et les migrer dans la base de données, mais cela ne fonctionne pas. Je viens de créer une application symfony très simple pour essayer de trouver l'origine du problème mais malgré toutes mes tentatives je n'y arrive pas. Voici les infos concernant mon environnement:
wampServer version 3.3
MariaDB version 11.1.2
PHP version 8.2.11
MySQL version 8.1.0
J'ai mis à jour tous mes services pour régler le problème mais rien n'a fonctionné.
J'ai créer un seul fichier dans mon application, une Entité, sans relations, créer grace à MakerBundle, pour simplifier les tests. (j'ai suivi scrupuleusement le tuto du site symfony pour être sûre de ne pas faire d'erreur.
Quand j'utilise la commande de création de base de données via symfony ça fonctionne, la BDD est créée dans PhpMyAdmin, mon DATABASE_URL est bien paramétré. Par contre quand je lance la migration avec php bin/console make:migration, voici ce qui apparaît :

  An exception occurred while executing a query: SQLSTATE[42S22]: Column not found: 1054 Cha   
  mp 'x.TABLE_NAME' inconnu dans on clause                                                                                         
In Exception.php line 28:                                               
  SQLSTATE[42S22]: Column not found: 1054 Champ 'x.TABLE_NAME' inconnu dans on clause          

In Statement.php line 130:                                                               
  SQLSTATE[42S22]: Column not found: 1054 Champ 'x.TABLE_NAME' inconnu dans on clause          

make:migration

Ma base de données est vide pour qu'il n'y ait pas de conflits. Voici l'entité concernée:


namespace App\Entity;

use App\Repository\StepsRepository;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;

#[ORM\Entity(repositoryClass: StepsRepository::class)]
class Steps
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;

    #[ORM\Column(type: Types::TEXT)]
    private ?string $description = null;

    #[ORM\Column]
    private ?int $orderNumber = null;

    //Getters Setters....

2 réponses


Bonjour,

Apparemment cela serait du à MariaDB, j ai résolu en faisant en enlevant la chaine de caractére aprés le ? de la var d'environement DATABASE_URL du fichier .env.

Cordialement

DATABASE_URL="mysql://Utilisateur:MDP@127.0.0.1/BDD?serverVersion=versiondemariadb-MariaDB&charset=utf8mb4"

tu n'as pas besoin de supprimer juste adapter en fonctione de ce dont tu as besoin et crée un .env.local et copie colle le contenue du .env dedans en apportant tes modifications, ca t'evitera les erreurs