Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak obiecany moduł mysql będzie działał z NodeJS?

Jeśli metoda jest węzłem "errback" z pojedynczym argumentem - zostanie rozwiązana bez parametrów w then lub alternatywnie zostać odrzucony za pomocą err przeszedł do niego. W przypadku obietnicy możesz ją złapać za pomocą .error lub użyj haczyka z Promise.OperationalError .

Oto proste podejście:

function getConnection(){
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'me',
      password : 'secret'
    });
    return connection.connectAsync().return(connection); // <- note the second return
}

getConnection().then(function(db){
    return db.queryAsync(....);
}).error(function(){
   // could not connect, or query error
});

Jeśli to jest do zarządzania połączeniami - użyłbym Promise.using - oto próbka z API:

var mysql = require("mysql");
// uncomment if necessary
// var Promise = require("bluebird");
// Promise.promisifyAll(mysql);
// Promise.promisifyAll(require("mysql/lib/Connection").prototype);
// Promise.promisifyAll(require("mysql/lib/Pool").prototype);
var pool  = mysql.createPool({
    connectionLimit: 10,
    host: 'example.org',
    user: 'bob',
    password: 'secret'
});

function getSqlConnection() {
    return pool.getConnectionAsync().disposer(function(connection) {
        try {
            connection.release();
        } catch(e) {};
    });
}

module.exports = getSqlConnection;

Co by ci pozwoliło:

Promise.using(getSqlConnection(), function(conn){
    // handle connection here, return a promise here, when that promise resolves
    // the connection will be automatically returned to the pool.
});



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL ERROR 2049 (HY000):Użyte połączenie przy użyciu starego (przed-4.1.1) protokołu uwierzytelniania (włączona opcja klienta 'secure_auth')

  2. Jak dostosować ustawienia wyświetlania wiersza poleceń mysql?

  3. Alternatywa dla tymczasowej tabeli MySQL w Oracle

  4. Instalacja Neo4j

  5. jak przenieść dane mysql do ElasticSearch w czasie rzeczywistym