sql >> Database teknologi >  >> RDS >> Mysql

Brug af node-mysql i en funktion

Dette er en almindelig fejl blandt async/nodejs begyndere. Du har i det væsentlige pakket en asynkronfunktion inde i en synkroniseringsfunktion, som nedbryder arten af ​​nodens hændelsesløkke. Returudtrykket skal erstattes med et tilbagekald. Se nedenfor:

// Method
function getUserInfo (userID, dynamicField, callback) {
    var query = connection.query('SELECT '+dynamicField+' from users WHERE userID = '+connection.escape(userID));
    query.on('result', function(row) {
        callback(null, row.dynamicField);
    });
};

// Implementation
getUserInfo(8, userEmail, function(err, result){
    console.log(err || result);
});

Efter konvention sender vi i Nodejs altid et fejlobjekt først i tilbagekaldet. I dette tilfælde, da der ikke er nogen fejl at fange, sender vi null i stedet for.




  1. automatisere rollback script oracle

  2. mysql_real_escape_string er udefineret

  3. IO.FileNotFoundException i MySql.Data.dll:Kan ikke indlæse System.Security.Permissions

  4. SQL Server Error 7222:"Kun en SQL Server-udbyder er tilladt i denne instans"