nodejs的一个用于连接mssql数据库

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
} );
///////////////////////////////问题和解决方案////////////////////////////////////// 问题/Issues: 1:不能输出匿名列,比如select * 2:如果不能排序,比如 select a from table oerder by b desc,目前的解决方法: ;with result as( SELECT Actor,ActorName FROM [GameActor] order by time desc ) select * from result 3:输出中文乱码,引发这个问题有几个方面,解决方法:
//TODO 待实现内容 //TODO
将支持获得多个结果集(Table) 将支持连接池 更多性能加强
//Use 使用 //Use
npm install mssqlhelper
//Test 测试代码 //Test
v a r db = require('./index'); db.config({ host: '192.168.1.100' : ,port: 1433 : ,userName: 'sa' : ,password: '123' : ,database: 'testdb' : });
http://play175.github.io/mssqlhelper/
2 / 2
//get output paramater value console.log('output @Param1='+ res.params.Param1.value); + //get rows v a r rows = res.tables[0].rows; f o r (v a r i = 0; i < rows.length; i+ + ) { v + v a r rp = ''; f o r (v a r j= 0,len = rows[i].metadata.columns.length;j< len;j+ + ){ v = < + v a r col = rows[i].metadata.columns[j]; rp + = ' ' + (rows[i].getValue(j)); } console.log(rp); }
//test query sql 执行sql
db.query( 'select @Param1 Param1,@Param2 Param2' ,{ Param1: { type : 'NVarChar', size: 7,value : 'myvalue' } : : ,Param2: { type : 'Int',value : 321 } : } ,f u n c t i o n (res){ f i f (res.err)t h r o w n e w Error('database error:'+ res.err.msg); t + v a r rows = res.tables[0].rows; f o r (v a r i = 0; i < rows.length; i+ + ) { v + console.log(rows[i].getValue(0),rows[i].getValue('Param2')); } } );
(1)把所有js文件用utf-8编码保存 (2)数据库中含有中文的字段,必须是unicode类型,比如varchar应该改为nvarchar:cast(column1 as nvarchar(50))
4:在多进程cluster的的使用:
v a r db = require('./index'); v a r cluster = require('cluster'); i f (cluster.isMaster) { v a r numCPUs = require('os').cpus().length; f o r (v a r i = 0; i < numCPUs; i+ + ) { v + v a r worker = cluster.fork(); } } else { db.config(..); db.query(..); }
Mssqlhelper by play175
2013-7-18
/nodejs Microsoft SQL Server Helper /nodejs的 个 ຫໍສະໝຸດ Baidu 接 一 用 连 mssql数 据 库 工 类 的 具
//Features 介绍 //Features
采用微软tds协议,不需要任何C/C++扩展,跨平台使用 执行sql语句,获得结果行 执行存储过程,获得输出参数以及结果行
//test excute sp 执行存储过程
http://play175.github.io/mssqlhelper/
1 / 2
Mssqlhelper by play175
2013-7-18
db.exec( 'test_sp' ,{ Param1: {direction: 'out', type : 'NVarChar', size: 50,value : 'my Param1 value' } : : : ,Param2: { type : 'Int',value : 123 } : ,Param3: {direction: 'out', type : 'VarChar', size: 50,value : '789' } : : : } ,f u n c t i o n (res){ f i f (res.err)t h r o w n e w Error('database error:'+ res.err.msg); t +
相关文档
最新文档