node.js 通过tedious 连接SQL SERVER
来源:互联网 发布:校园网mac地址修改 编辑:程序博客网 时间:2024/05/02 00:28
github地址: https://github.com/tediousjs/tedious
安装: npm install tedious
例子:
var Connection = require('tedious').Connection;var Request = require('tedious').Request;var connection = new Connection({'userName':'sa', //用户名'password':'123456', //密码'server':'127.0.0.1', //数据库地址'options':{'port':1433, //端口号'database':'test', //数据库名'encrypt':true //是否启用加密传输,测试了两台机器,一台开了无法连接} });connection.on('connect',function(err){//判断有没有出错if(err){console.log(err);}else{//生成sql执行语句,并指定接收数据完毕后执行的回调函数var request = new Request('select * from tt',function(err,rowCount){//判断有没有出错if(err){console.log(err);}else rows['rowCount'] = rowCount; //rowCount是语句执行影响行数console.log(rows);connection.close(); //记得关闭连接});var rows = {};var n = 0;//查询数据返回,select才有返回,每次一行记录request.on('row',function(columns){rows[n] = {};//遍历出列名和值columns.forEach(function(s){rows[n][s.metadata.colName] = s.value; //列名和值});n++;});//执行状态返回request.on('doneProc',function(r,m,status){//成功返回0,一般不会用到,在Request的回调判断err即可if(status)rows = request;});//执行语句connection.execSql(request);} });
request = new Request("select @@identity",function(err, rowCount){ //这个是返回插入成功的idcallback(param); //把查询结果返回给回调函数});request.on('row', function(columns) { param['id'] = columns[0].value; //获取id}); connection.execSql(request);
封装起来比较方便使用:
var Connection = require('tedious').Connection;var Request = require('tedious').Request;exports.mssql = function(config){this.connection = new Connection(config);this.query = function(str,callback){ //执行查询var connection = this.connection;var rows={};connection.on('connect', function(err){ //连接数据库,执行匿名函数if(err){callback({'err':err['message']+'请检查账号、密码是否正确,且数据库存在'});}else{var request = new Request(str,function(err, rowCount){ if(err)err = {'err':err['message']};callback(err,rows);connection.close();});var n=0;request.on('row', function(columns) { //查询成功数据返回rows[n]={};columns.forEach(function(column) {rows[n][column.metadata.colName] = column.value;//获取数据});n++;});connection.execSql(request); //执行sql语句}});}}保存成 mssql.js,然后在这样使用:
var mssql = require('./mssql.js'); var conn = new mssql.mssql({'userName':'sa','password':'123456','server':'127.0.0.1','options':{'port':1344,'database':'test'}}); conn.query('select * from tt', function(err,data){if(!err){console.log(data) //成功返回数据}else {console.log(err) //出错返回} );
1 0
- node.js 通过tedious 连接SQL SERVER
- node.js通过tedious连接SQLServer数据库方法封装
- Node.js连接Sql Server 2008
- 安装下载node.js通过msnodesql访问SQL Server
- 通过sql server 连接mysql
- 通过JDBC连接SQL Server
- node.js通过权限验证连接MongoDB
- JAVA通过JDBC连接SQL Server 2000
- SQL server 通过链接服务器连接Mysql
- MFC通过ADO连接SQL SERVER数据库
- Python通过ODBC连接SQL server
- SQL Server 2008通过LinkServer连接MySQL
- Qt 通过ODBC连接SQL Server
- 通过JDBC连接SQL Server数据库
- Linux下通过ODBC连接SQL Server
- JSP通过JavaBean连接SQL Server数据库
- JSP通过JavaBean连接Sql Server数据库
- 通过DAC来连接SQL Server
- 表单中Readonly和Disabled的区别
- Listbox 实现Item双击事件
- Type “”类型“”
- 我自己的网站--搭建环境
- merge k sorted list with iterator
- node.js 通过tedious 连接SQL SERVER
- Apache2.4+tomcat7集群
- java List删除元素问题及解决办法
- POJ 3280 Cheapest Palindrome 【区间DP】
- jsp与servlet之间页面跳转及参数传递实例
- linux下串口的操作
- HDOJ-----4607
- Roads in the North
- 点亮LED灯(一)