recherche

Maison  >  Questions et réponses  >  le corps du texte

MySQL NODEJS : un guide complet pour créer des bases de données et des tables associées

<p>Je suis en train de configurer une application mysql/nodejs. </p> <p>Je souhaite supprimer la base de données, recréer la base de données et créer les tables à chaque redémarrage du serveur. </p> <p>Si je précise une connexion à la base de données : </p> <pre class="brush:js;toolbar:false;">let con = mysql.createConnection({ hôte : "localhost", utilisateur : "root", mot de passe : "pass", base de données : "ma_base de données", }); ≪/pré> <p>Je peux créer des tables, des index et insérer des valeurs, mais seulement la première fois. Chaque fois plus tard, cela me dit que tout a été créé. </p> <p>D'un autre côté, si je ne spécifie pas la base de données lors de la création de la connexion, je peux supprimer la base de données, en créer une nouvelle, mais lorsque j'essaie de créer la table, j'obtiens une erreur disant que je ne le fais pas. Je n'ai pas de base de données associée à la table. </p> <p>Existe-t-il un moyen de résoudre ce problème ? </p>
P粉682987577P粉682987577476 Il y a quelques jours533

répondre à tous(1)je répondrai

  • P粉231112437

    P粉2311124372023-08-27 00:24:06

    Vous n'avez pas besoin d'utiliser une base de données pour la connexion

    var pool  = mysql.createPool({
          connectionLimit : 10,
          host            : 'example.org',
          user            : 'bobby',
          password        : 'pass'
        });

    Ensuite, vous pouvez créer la base de données

    pool.getConnection(function(err, connection){
        if(err){
            return cb(err);
        }
        connection.query("CREATE DATABASE mydb", function(err, data){
            connection.release();
            cb(err, data);
        });
    });

    Alors utilisez

    connection.changeUser({database : "mydb"});

    Connectez-vous à la base de données nouvellement créée

    pool.getConnection(function(err, connection){
        if(err){
            return cb(err);
        }
        connection.changeUser({database : "mydb"});
      let createTodos = `create table if not exists mytable(
                              id int primary key auto_increment,
                              title varchar(255)not null,
                              testdata tinyint(1) not null default 0
                          )`;
    
      connection.query(createTodos, function(err, results, fields) {
        if (err) {
          console.log(err.message);
        };
    });

    Ceci est simplement divisé en fonctions distinctes pour montrer l'idée.

    répondre
    0
  • Annulerrépondre