1、下载node-sqlserver

  (1)msnodesql (msnodesql-0.2.1-v0.8-x64.msi)下载地址:下载  自行选择与自己系统相符的版本,点击安装。

  (2)msnodesql 官方地址:https://github.com/WindowsAzure/node-sqlserver 含wiki 和 疑问解答 。

开始我是通过(1)来下载node-sqlserver的,但是发现在编译build的那一步怎么都没运行通过,我的操作系统是64位的,后来在网上看到一个老外说,不要下载msi来安装,最好通过GitHub网站来下载zip包。

2、打开msnodesql 文件夹下的README.md文件,里面有说到要安装的东西。

3、安装node-gyp,打开命令行,输入命令:

npm install -g node-gyp

4、下载安装python 2.7.6,注意必须是python 2.7.x版本,我开始下载的是3.4.0版本,但是不支持gyp。

  官方下载地址:https://www.python.org/download/

5、下载安装Visual C++ 2010 - the Express edition

官方下载地址:http://www.visualstudio.com/zh-cn/downloads/

6、在第一步中下载的node-sqlserver-master.zip解压之后的文件夹放到测试项目下的node_modules目录下,并把文件夹名称“node-sqlserver-master”修改为“msnodesql”。

  然后在命令行里进入到\node_modules\msnodesql中,执行如下命令

node-gyp configure

  这会为C++源代码创建一个解决方案和项目。成功之后再执行命令:

node-gyp build

  编译成功之后,会在msnodesql文件夹的build\Release下生成一个sqlserver.node文件。

7、清除掉build下除“Release\sqlserver.node”文件之外的所有东西。

  同时把sqlserver.node文件复制到msnodesql\lib文件夹中,可以打开该文件夹中的sqlserver.native.js文件,里面有调用到sqlserver.node文件。

  清除掉msnodesql下的binding.gyp文件,如果不清除,会以为msnodesql没有编译。

8、安装debugging: 在测试项目的目录下新增一个文件“IISNode.yml”,文件的内容为:

loggingEnabled: true
devErrorsEnabled: true

  如果项目正式上线,请删除此文件。

9、写代码测试数据库连接

var conn_str = "DSN=JobTasks;uid=sa;PWD=DB41Pswd;DATABASE=JobTasks";

var mssql = require('msnodesql');

mssql.open(conn_str, function (err, conn) {
if (err) {
console.log("Error opening the connection!");
console.log(err);
return;
} mssql.queryRaw(conn_str, "select * from test", function (err, results) {
if (err) {
console.log(err);
}
else {
for (var i = ; i < results.rows.length; i++) {
console.log(results.rows[i][] + ' ' + results.rows[i][] + ' ' + results.rows[i][]);
}
}
}) mssql.query(conn_str, "INSERT INTO test (ID, Name, [Enable]) VALUES (?,?,?)", ['T0005', 'Test_NodeSql', 'N'], function( e, r ) { if (e) {
console.log(e);
}
});
});

NodeJS下访问SQL Server的更多相关文章

  1. Ubuntu12.10下Python(pyodbc)访问SQL Server解决方案

    一.基本原理 请查看这个网址,讲得灰常详细:http://www.jeffkit.info/2010/01/476/   二.实现步骤 1.安装linux下SQL Server的驱动程序 安装Free ...

  2. EF 数据库连接字符串-集成安全性访问 SQL Server

    使用 Windows 集成安全性访问 SQL Server 如果您的应用程序运行在基于 Windows 的 Intranet 上,则也许可以将 Windows 集成身份验证用于数据库访问.集成安全性使 ...

  3. 在oracle中通过链接服务器(dblink)访问sql server

    在oracle中通过链接服务器(dblink)访问sql server 2013-10-16 一.   工作环境: <1> Oracle数据库版本:Oracle 11g  运行环境 :IB ...

  4. ORACLE透明网关访问SQL Server配置总结

      透明网关概念 ORACLE透明网关(Oracle Transparent Gateway)可以解决ORACLE数据库和非ORACLE数据库交互数据的需求.在一个异构的分布式环境中,通过ORACLE ...

  5. ASP调用存储过程访问SQL Server

     ASP调用存储过程访问SQL Server 2011-02-15 10:22:57 标签:asp 数据库 sQL 存储过程 Server ASP和存储过程(Stored Procedures)的文章 ...

  6. 原生的ado.net(访问sql server数据库)

    本文介绍原生的ado.net(访问sql server数据库) 写在前面 数据库连接字符串 过时的写法 string str = "server=localhost;database=my_ ...

  7. .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库

    今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...

  8. ODBC database driver for Go:Go语言通过ODBC 访问SQL server

    Go语言通过ODBC 访问SQL server,这里需要用到go-odbc库,开源地址::https://github.com/weigj/go-odbc 一.驱动安装 在cmd中打开GOPATH: ...

  9. Oracle Gateways透明网关访问SQL Server

    自己的本机安装了Oracle 12c,公司的平台需要同时支持Oracle与SQL Server,很多时候都有将数据从Oracle同步到SQL Server的需求.通过SQL Server的link S ...

随机推荐

  1. 1154 能量项链[区间dp]

    1154 能量项链 2006年NOIP全国联赛提高组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 在Ma ...

  2. Abp Zero——前端如何新增功能模块

    为适应不同开发人员,abp rezo的UI实现了spa和mpa两套: spa--Single-page Application(单页面应用),默认"http://localhost/Acco ...

  3. 人情世故&潜规则

    大凡成功的牛人,无一例外都明白这一点.他们读懂了社会的本质和人际交往的潜规则,知道对方需要什么,知道对方脑子里在想什么.你几乎看不见他奔波劳碌,但是在不动声色中,他就已经实现人生目标.他们成功的密码是 ...

  4. 解决discuz模板插入jvascript脚本问题(Unexpected token <)

    问题描述: 最近学习discuz中要做一个焦点图,添加一个模板,让其显示后台推送图片,其中模块模板中要用到如下的代码 <div class="wrap"> <di ...

  5. java使用BufferedImage和Graphics实现图片合成

    package com.igoxin.weixin.custom; import java.awt.Graphics; import java.awt.image.BufferedImage; imp ...

  6. 用实体框架搭建MVC程序框架(全部)

    第一步:1.新建项目 2.新建domain类库 3.新建Data类库 4.为上面的1.2.3添加实体框架nuget包.(可以右键管理nuget包来查找entityframework,当然也可以通过程序 ...

  7. double与int类型自动转换

    package com.abc.test; public class SumTest { public static void main(String[] args) { //题目A:2+4+6+8+ ...

  8. C++ Maps 映射

    C++ Maps是一种关联式容器,包含“关键字/值”对 begin() 返回指向map头部的迭代器 clear() 删除所有元素 count() 返回指定元素出现的次数 empty() 如果map为空 ...

  9. jquery获取html元素的绝对位置和相对位置

    jquery获取html元素的绝对位置坐标和相对父元素的位置坐标方法:绝对位置坐标:$("#elem").offset().top$("#elem").offs ...

  10. jQuery 实现网页图片动态游走,碰到边框反弹

    学学jQuery,实现个小功能练练手 需要用到定时器 html代码如下 <html> <head> <title></title> <script ...