cari

Rumah  >  Soal Jawab  >  teks badan

MySQL NODEJS: Panduan Lengkap untuk Mencipta Pangkalan Data dan Jadual Berkaitan

<p>Saya sedang menyediakan aplikasi mysql/nodejs. </p> <p>Saya mahu menggugurkan pangkalan data, mencipta semula pangkalan data dan mencipta jadual setiap kali pelayan dimulakan semula. </p> <p>Jika saya menyatakan sambungan ke pangkalan data: </p> <pre class="brush:js;toolbar:false;">let con = mysql.createConnection({ hos: "localhost", pengguna: "root", kata laluan: "lulus", pangkalan data: "my_db", }); </pra> <p>Saya boleh mencipta jadual, indeks dan nilai sisipan, tetapi hanya untuk kali pertama. Setiap kali kemudian ia memberitahu saya bahawa segala-galanya telah dicipta. </p> <p>Sebaliknya, jika saya tidak menentukan pangkalan data semasa membuat sambungan, saya boleh menggugurkan pangkalan data, mencipta yang baharu, tetapi apabila saya cuba mencipta jadual, saya mendapat ralat mengatakan saya tidak' t mempunyai pangkalan data yang dikaitkan dengan jadual. </p> <p>Adakah terdapat cara untuk menyelesaikan masalah ini? </p>
P粉682987577P粉682987577508 hari yang lalu564

membalas semua(1)saya akan balas

  • P粉231112437

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

    Anda tidak perlu menggunakan pangkalan data dalam sambungan

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

    Selepas itu anda boleh mencipta pangkalan data

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

    Kemudian gunakan

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

    Sambung ke pangkalan data yang baru dibuat

    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);
        };
    });

    Ini hanya dibahagikan kepada fungsi berasingan untuk menunjukkan idea.

    balas
    0
  • Batalbalas