2017-05-07 39 views
0

我非常喜欢node.js和javscript本身。我试图建立到SQLServer的一个基本的连接,但我收到以下错误:TypeError:sql.Connection不是函数Node.js

TypeError: sql.Connection is not a function

我下面的是MSSQL包git仓库

//get an instance of sqlserver 
var sql = require('mssql'); 

//set up a sql server credentials 
var config = { 
server: 'localhost', 
database: 'trafiyadb', 
user: 'jhonycage', 
password: 'juan1014', 
port: 1433 
}; 


function con() { 
var dbConn = new sql.Connection(config); 
dbConn.connect().then(function(){ 
    console.log("connected") 
}).catch(function (err) { 
    console.log(err); 
}) 
} 

con(); 

的建议,这是的package.json

{ 
"name": "trafiyaapi", 
"version": "1.0.0", 
"description": "", 
"main": "server.js\u001b[A\u001b[B\u001b[B\u001b[B\u001b[A\u001b[B", 
"dependencies": { 
"express": "^4.15.2", 
"body-parser": "^1.17.1", 
"mssql": "^4.0.4", 
"jsonwebtoken": "^7.4.0" 
}, 
"devDependencies": {}, 
"scripts": { 
    "test": "echo \"Error: no test specified\" && exit 1", 
"start": "node server.js" 
}, 
"author": "", 
"license": "ISC" 
} 

我只是执行

$node server

我必须做错事,我该如何连接数据库?

回答

2

实际上,功能Connection不存在。根据documentation,要连接到数据库,可以使用类ConnectionPool或方法connect

var dbConn = new sql.ConnectionPool(config); 

dbConn.connect(function(err) { 
    // ... 
}); 

// OR ... 

sql.connect(config).then(function(dbConn) { 
    // ... 
}) 
+0

它的工作的确,感谢了一堆,但现在我得到以下错误: {[ConnectionError:无法连接到本地主机:1433 - 无法连接(SEQ uence) 代码: 'ESOCKET' , originalError: {[ConnectionError:未能连接到本地主机:1433 - 无法连接( 序列)] 消息: '未能连接到本地主机:1433 - 无法连接(序列 )', 代码:' ESOCKET'}, name:'ConnectionError'} – Juanca

+0

现在您必须确保你的数据库进程正在运行。仔细检查端口并尝试将'localhost'更改为'127.0.0.1'。 – juliobetta

+1

只是将端口号和服务器更改为127.0.0.1并已连接,我必须感谢您的主席先生的帮助 – Juanca