Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

Node.js के साथ कई MySQL प्रश्नों के लिए दृष्टिकोण

कयामत के पिरामिड से बचना चाहिए:

var express = require('express');
var Q = require('Q');
var app = express();

app.get('/',function(req,res){
    var mysql      = require('mysql');

    var connection = mysql.createConnection({
        host     : 'localhost',
        user     : 'root',
        password : ''
    });

    connection.connect();

    function doQuery1(){
        var defered = Q.defer();
        connection.query('SELECT 1 AS solution',defered.makeNodeResolver());
        return defered.promise;
    }

    function doQuery2(){
        var defered = Q.defer();
        connection.query('SELECT 2 AS solution',defered.makeNodeResolver());
        return defered.promise;
    }

    Q.all([doQuery1(),doQuery2()]).then(function(results){
        res.send(JSON.stringify(results[0][0][0].solution+results[1][0][0].solution));
        // Hint : your third query would go here
    });

    connection.end();

});

app.listen(80);
console.log('Listening on port 80');

यह नमूना एक परिणाम दिखाता है जो 2 स्वतंत्र गणना मूल्यों पर निर्भर करता है। इनमें से प्रत्येक मान doQuery1 और doQuery2 में पूछे गए हैं। उन्हें अनुक्रम में निष्पादित किया जाता है, लेकिन अतुल्यकालिक रूप से।

आगे आप देख सकते हैं Q.all(... जो मूल रूप से सफलता पर "तब" कॉलबैक कहते हैं। उस कॉलबैक के भीतर, गणना की जाती है।

वादों का उपयोग करना (विवरण:Github Q:Javascript के लिए वादा और विकिपीडिया ) अपने कोड को साफ-सुथरा बनाने, परिणामों की गणना और प्रबंधन को अलग करने और चीजों को इधर-उधर करने की अनुमति दें।

देखें कि आपकी गणना के लिए "doQuery3" को पूर्व-आवश्यकता के रूप में जोड़ना कितना आसान होगा!

और नमूना कोड से संबंधित "package.json" को बोलें:

{
    "name": "hello-world",
    "description": "hello world test app",
    "version": "0.0.1",
    "private": true,
    "dependencies": {
        "express": "3.2.0",
        "q": "0.9.3",
        "mysql":"2.0.0-alpha7"
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं एक बड़ी (14 जीबी) MySQL डंप फ़ाइल को एक नए MySQL डेटाबेस में कैसे आयात कर सकता हूं?

  2. MySQL प्रतिबंधित और कोई कार्रवाई नहीं

  3. डबल-क्वेरी के बिना MySQL पेजिनेशन?

  4. बड़ी .PDF फ़ाइलें MySQL डेटाबेस में PHP के माध्यम से मध्यम BLOB के रूप में अपलोड नहीं हो रही हैं, 2MB के तहत फ़ाइलें ठीक काम करती हैं

  5. Bcrypt पासवर्ड से लॉगिन सत्यापित करें