如何让node.js和mysql一起工作?

前端之家收集整理的这篇文章主要介绍了如何让node.js和mysql一起工作?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在此先感谢您的帮助!

我正在制作节点/快递应用程序,我想使用mysql数据库.但我似乎无法连接到数据库.

我知道我应该使用node-MysqL模块(https://github.com/felixge/node-mysql),但我一定做错了.

我对此完全陌生.我是否必须创建数据库然后创建表?有没有办法在别处创建数据库,以便每次重新启动应用程序时都不会删除它?

这是我的代码.有人可以回答上面的问题并告诉我下面我做错了什么吗?谢谢!

var express = require('express'),routes = require('./routes'),user = require('./routes/user'),http = require('http'),io = require('socket.io'),path = require('path');

var app = express();
var server = http.createServer(app);
sio = io.listen(server);

app.configure(function(){
  app.set('port',process.env.PORT || 3000);
  app.set('views',__dirname + '/views');
  app.set('view engine','jade');
  app.use(express.favicon());
  app.use(express.logger('dev'));
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(require('stylus').middleware(__dirname + '/public'));
  app.use(express.static(path.join(__dirname,'public')));
});

app.configure('development',function(){
  app.use(express.errorHandler());
});

server.listen(app.get('port'),function(){
  console.log("Express server listening on port " + app.get('port'));
});


var MysqL      = require('MysqL');
var connection = MysqL.createConnection({
  user     : 'me',password : 'secret',host     : 'localhost',port     : app.get('port')
});

connection.connect();

connection.query('CREATE TABLE tesTable (integer int,textfield VARCHAR(100),PRIMARY KEY(integer))',function(err,result){
                      if(err) {
                          console.log(err);
                      } else {
                          console.log("Table testTable Created");
                      }
                  });

顺便说一句,在package.json中,我列出了

"MysqL": "2.0.0-rc2" 

作为依赖和做

'npm install'
最佳答案
您可以像往常一样在数据库中创建表格,并且只要您重新启动应用程序,它就会持续存在,不会被删除.如果需要,可以使用以下代码连接到数据库

    var MysqL = require('MysqL');

app.use( connection(MysqL,{
    host: 'myhost',user: 'user_name',password: 'password',port: 3306,//port MysqL
    database: 'database_name',multipleStatements: 'true'  //false by default

},'pool'));

req.getConnection(function(err,connection) {
    connection.query("SELECT * FROM `table_name`;",function (error,row){
        if(!error){
                       //do something.....
        }
        else console.log("Error : "+err);
        });
    //do something else...
});

猜你在找的MySQL相关文章