繁体   English   中英

如何传递和执行mysql查询?

[英]How do you pass and execute a mysql query?

我想知道如何执行mysql查询,以便客户端可以看到“注册的用户: 数字

Server.js:

var http = require('http');
var ejs = require('ejs');
var fs = require('fs');
var mysql = require('mysql');
var connection = mysql.createConnection({
    host: '127.0.0.1',
    user: 'root',
    password: 'root',
    database: 'kitsune',
    connectionLimit: 50,
    port: 3306 });

connection.connect(function(err) {
    if (err) throw err;
});
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
  if (error) throw error;
  console.log('The solution is: ', results[0].solution);
});
module.exports = connection;

http.createServer(function(req,res) {
  res.writeHead(200, {'Content-Type': 'text/html'});

  fs.readFile('index.html', 'utf-8', function(err, content) {
    if (err) {
      res.end('error occurred');
      return;
    }
    var countQuery = "SELECT Count(ID) AS NumberOfPenguins FROM Penguins"; console.log(countQuery);
connection.query(countQuery, function(err, rows) {
  if (err) throw err;
  console.log('Connected!');
});

    var renderedHtml = ejs.render(content, {countQuery: countQuery});
    res.end(renderedHtml);
  });
}).listen(80);

index.html:

<html>
   <head>
   </head>
<body>
Users registered: <%= countQuery %>
</body>
</html>

这仅显示查询,但不执行查询。 关于如何执行它的任何想法?

您确实执行了查询,但从未对结果执行任何操作。 结果是在回调函数中传递的rows

connection.query(countQuery, function(err, rows) {
  if (err) throw err;

  var renderedHtml = ejs.render(content, {countQuery: rows});
  res.end(renderedHtml);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM