我有一个在 Windows 7 上运行的小型 Node.js 应用程序,它成功地从 SQL Server 2008 数据库检索数据。
我最近买了一台新电脑,安装了Windows 8、VS 2012和SQL Server 2012。我安装了最新版本的node。我去安装 Node sql驱动程序,发现有一个安装程序在http://www.microsoft.com/en-us/download/details.aspx?id=29995
我下载了最新版本(0.2.1-v0.8)并运行了此安装程序。我运行该应用程序,但它无法连接,也没有给我一个错误。
我尝试按照 github 上推荐的“老式”方式进行安装:https://github.com/WindowsAzure/node-sqlserver这似乎也不起作用。 (这意味着我必须安装 VS 2010 和 Python。)
Windows 8(64 位)支持此 SQL 驱动程序吗?
如果有人有任何建议,我愿意尝试任何事情。
更新: 我在一个新的 Node 项目中尝试了这个,我从头开始,按照说明从 npm 安装 msnodesql 驱动程序后,我让它工作了。
我认为在构建驱动程序的最初步骤中,一定出了问题。以下是我在 Windows 8 上使用 SQL Server 从 SQL 数据库检索数据时遵循的步骤:
- npm 安装 msnodesql
- 转到项目的 .\node_modules\msnodesql 目录
- node-gyp 配置
- node-gyp 构建
- 然后将sqlserver.node文件从msnodesql目录中的build\Release目录复制到lib目录
- 正常使用模块
当然..这就是 git 页面上的说明...也许我从不同的目录运行了构建..或者只是做了一些愚蠢的事情...但是 Windows 8 可以毫无问题地运行 msnodesql。
最佳答案
安装 Node 0.6.20
在 Azure Powershell 中:
..node>New-AzureServiceProject AzureNode
..node\AzureNode>Add-AzureNodeWorkerRole NodeServer
..node\AzureNode>npm install express -g
..node\AzureNode\Webrole1>npm install node-gyp
..node\AzureNode\Webrole1>express
..node\AzureNode\Webrole1>Y
..node\AzureNode\Webrole1>del server.js
..node\AzureNode\Webrole1>ren app.js server.js
下载 msnodesql-0.2.1-v0.6-ia32.msi 来自此处:MSNodeSQL v0.6至
..node\AzureNode\Webrole1\node-modules\
运行 msi 并在之后将其删除
..node\AzureNode\Webrole1\node-modules\msnodesql>node-gyp configure
..node\AzureNode\Webrole1>npm install
用您的代码替换 server.js(当前代码已损坏)
..node\AzureNode\Webrole1>node server.js
享受吧!
关于sql-server - 带有 VS 2012 和 SQL Server 2012 的 WIndows 8 上的 msnodesql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14743101/