首先下载微软的mssql支持库:npm install -g [email protected]
var mssql = require("mssql");
var user = "sa",
password = "masterkey",
server = "127.0.0.1",
database = "EMacIntf";
var db={};
var config = {
user: user,
password: password,
server: server,
database: database,
options:{
//encrypt: true
},
pool:{
min: 0,
idleTimeoutMillis: 3000
}
};
var user = "sa",
password = "masterkey",
server = "127.0.0.1",
database = "EMacIntf";
var db={};
var config = {
user: user,
password: password,
server: server,
database: database,
options:{
//encrypt: true
},
pool:{
min: 0,
idleTimeoutMillis: 3000
}
};
var restoreDefaults = function(){
config={
user:user,
password:password,
server:server,
database:database,
options:{
//encrypt: true
},
pool:{
min: 0,
idleTimeoutMillis: 3000
}
};
}
config={
user:user,
password:password,
server:server,
database:database,
options:{
//encrypt: true
},
pool:{
min: 0,
idleTimeoutMillis: 3000
}
};
}
db.querySql = function(sql, params, callBack){
var connection = new mssql.Connection(config, function(err){
var ps = new mssql.PreparedStatement(connection);
if(params != ""){
for(var index in params){
if(typeof params[index] == "number"){
ps.input(index, mssql.Int);
}else if(typeof params[index] == "string"){
ps.input(index, mssql.NVarChar);
}
}
}
ps.prepare(sql, function(err){
if(err)
console.log(err);
ps.execute(params, function(err, recordset){
callBack(err, recordset);
ps.unprepare(function(err){
if(err)
console.log(err);
});
});
});
});
restoreDefaults();
};
var connection = new mssql.Connection(config, function(err){
var ps = new mssql.PreparedStatement(connection);
if(params != ""){
for(var index in params){
if(typeof params[index] == "number"){
ps.input(index, mssql.Int);
}else if(typeof params[index] == "string"){
ps.input(index, mssql.NVarChar);
}
}
}
ps.prepare(sql, function(err){
if(err)
console.log(err);
ps.execute(params, function(err, recordset){
callBack(err, recordset);
ps.unprepare(function(err){
if(err)
console.log(err);
});
});
});
});
restoreDefaults();
};
module.exports=db;
这里执行查询语句、增删改、存储过程语句都可以,基本上可以完成正常的业务逻辑操作。
调用范例:
var db = require("./db.js");
db.querySql("select * from XXX", null, function(err, data){
res.send(JSON.stringify(data));
});
res.send(JSON.stringify(data));
});