Verifier l'existance d'une base

Résolu
Bonjour,
Y'a t'il un moyen de verifier l'existance d'une base via une fonction php ou une requêtes pdo, ou mysql_ ou mysqli_ ...
Et aussi bien sur l'existance d'une table ...
merci 'davance



--

Débutant !

2 réponses

  1. Il suffit d'exécuter cette requête :
    SELECT COUNT(*) AS 'nb' FROM 'information_schema'.'SCHEMATA' WHERE 'SCHEMA_NAME'="dbname"


    Exemple avec PDO : http://paste.pocoo.org/show/WkXtUUuOhqdq60yACz77/
    1. merci, mais j'ai une autre question comme tu es l'homme à réponse à tout avion-f16 :

      comment peut on créer une base avec PDO ?
      Je débute en PDO, avant j'utilisais mysql_

      Parceque, j'ai essayé

      $connection = mysql_connect('localhost', 'root', '');
      $base = $_POST['base'];
      mysql_query("CREATE DATABSE $base ", $connection) or die ('Création impossible de la base, veuillez réessayer plus tard, par root pour créer la base '.$_POST['base'].' Error syntax') ;


      mais j'ai tout le temps le contenu du die() ...

      Je comprends pas ...
      Ca m'est nécéssaire de savoir comment créer une base sous wamp en local !

      merci
    2. moi je fais comme ça, ça fonctionne avec TABLE, ça doit fonctionner avec BASE :

      $req=
      "CREATE TABLE ".$nom_de_la_table." (
      id int unsigned NOT NULL auto_increment,
      test int NOT NULL default '1',
      nom varchar(200) NOT NULL default '',
      PRIMARY KEY (id)
      )";

      $bdd->exec($req);
    3. avion => te ne vérifies pas l'existence de la base, tu vérifie si elle n'est pas vide
  2. Ta requête est mauvaise : CREATE DATABSE $base
    Pour en savoir plus, c'est ici.

    @Templier Nocturne : Je viens de tester, et ça fonctionne même avec une base sans table.
    1. bien vu, je crois que la prog c'est pas fait pour moi, des erreurs si con que ça ...

      merci, bon maintenant j'ai un "problème" de constante, enfin, message complet :

      Notice: Use of undefined constant a - assumed 'a' in C:\wamp\www\test\index\install.php on line 24

      mais la base est bien créer et le message du echo 'base créer avec succès' est affiché !!

      moyen de retirer ce message ?

      j'avais lu quelque part qu'on mettais @ devans la fonction mysql_truque je vais essayer !

      et merci du coup de main !!
      je te dois beaucoup avion-f16 !
    2. nan c'est pas le @ qui change quelque chose !

      je laisse, je ferais via javascript une fonction qui cachera uen div que je marquerais avant la fonction et juste avant l'écho
    3. le @ sert uniquement à ne pas retourner les erreurs