无法设置msnodesql工作

时间:2014-06-19 16:15:26

标签: sql-server node.js azure node-sqlserver

好的,我在这里尝试了一切。我确实从

安装了msnodesql

- https://github.com/Azure/node-sqlserver

- http://www.microsoft.com/en-us/download/details.aspx?id=29995

遵循安装的每一条指令。用node-gyp构建......一切。

然后我做的事情如下:

var conn_str = "Driver={SQL Server Native Client 11.0};Server={(local)\\SQLEXPRESS};Database={DBName};Trusted_Connection={Yes};";
var stmt = sqlserver.query(conn_str, "SELECT * from av.CLIENT");
stmt.on('meta', function (meta) { console.log("We've received the metadata"); });
stmt.on('row', function (idx) { console.log("We've started receiving a row"); });
stmt.on('column', function (idx, data, more) { console.log(idx + ":" + data); });
stmt.on('done', function () { console.log("All done!"); });
stmt.on('error', function (err) { console.log("We had an error :-( " + err); });

它在节点控制台上抛出了一个错误:

[错误:[msnodesql]传递给函数查询无效。类型应为。]

让我发疯的是它应该是这样的:

[错误:[msnodesql]无效--SOMETHING--传递给函数查询。类型应为--SOMETHING_ELSE - 。]

正确?

它甚至没有通过 stmt.on('错误',

我一遍又一遍地重复安装步骤,认为可能在构建过程中出现错误,但没有。!

我正在使用Windows 8 x64和节点v-0.10(我想知道该驱动程序是否仅适用于节点v.0.8<

我需要帮助。 PLS。

2 个答案:

答案 0 :(得分:0)

我没有使用node-sqlserver,但是我使用了tedious并且运行良好。试一试,也许你会有更好的运气?

答案 1 :(得分:0)

确定。我刚刚发现它为什么会出现像Error这样的错误:[msnodesql]传递给函数查询无效。类型应该是。]。

如果碰巧有一个Array对象的原型,它会抛出这种错误。例如,我在Array类上有一个原型函数,名为" indexOfObject" .....

更具体地说, msnodesql>中有一个文件。 lib> sql.js ,其中包含一个名为validateParameters的函数。

在那里,我改变了这个:

if ( typeof parameters[p].value != parameters[p].type ) 

为此:

if ( typeof parameters[p].value != parameters[p].type && parameters[p].name ) 

它可能不会成为我所有问题的解决方案,但至少从那里开始一切正常。!