npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

dmdb

v1.0.31017

Published

DM database driver

Downloads

10,547

Readme

dmdb

此包为Node.js连接达梦8数据库的原生驱动,API详见安装目录下的《DM8程序员手册》

仅支持Node.js 12 及以上

Extensions

Change Logs

dmdb v1.0.31017(2024-12-09)

  • 修复了游标类型的绑出参数始终为null的问题,游标类型的绑出参数会根据执行选项ExecuteOptions.resultSet返回ResultSet对象或所有数据行
  • 支持通过执行选项ExecuteOptions.outFormat设置执行结果中的绑出参数Result.outBinds的返回格式为数组或对象

dmdb v1.0.30381(2024-11-14)

  • 查询结果集中,JSON或JSONB类型的数据,自动解析成JSON对象返回(需服务器执行码也支持区分JSON/JSONB和CLOB),该特性控制开关见index.d.ts文件中的
    • parseJson: boolean

dmdb v1.0.24984(2024-04-30)

  • 新增以流的方式读取结果集,详情查看index.d.ts文件中的API:
    • Connection.queryStream(sql: string, bindParams: BindParameters, options: ExecuteOptions): Readable
    • ResultSet.toQueryStream(): Readable

dmdb v1.0.19862(2023-09-18)

  • 修复了以服务名方式连接数据库时,因设置了错误的通信协议版本号导致解析服务器返回的消息Buffer失败的问题

dmdb v1.0.18856(2023-08-18)

  • 修复了连接串属性schema在连接池中失效的问题
  • 修复了连接池加服务名方式连接数据库导致的资源泄露问题
  • 新增连接串参数: language。指定客户端语言,将报错信息按照指定语言返回,目前支持简体中文,英文和繁体中文。详情查看index.d.ts文件中ConnectionAttributes.language

dmdb v1.0.17128(2023-05-06)

  • 新增连接串参数: injectArray。绑定参数为数组时,是否直接注入到SQL语句中,非数组类型的参数不受影响。详情查看index.d.ts文件中ConnectionAttributes.injectArray
  • 支持在连接串上直接配置动态服务名,使用示例:dm://user:password@GroupName?GroupName=(host1:port1,host2:port2,...)

dmdb v1.0.15238(2023-02-02)

  • *从数据库中查询BIGINT列,结果集中该列数据的类型从js的bigint类型修改为了js的number类型 注:如果数据库中该列的值超过js number的安全范围,即-(2^53 - 1) 到 2^53 - 1,则不能保证数据正确性!可以参考dm.fetchAsString和dm.ExecuteOptions.fetchInfo将数值转为字符串来解决
  • *修复了字符大字段(CLOB/TEXT)中存在乱码字符时,读取结果不正确的问题
  • *修复了连接串属性doSwitch=1时,(服务名中的)连接不会自动切换和自动重连的问题
  • 与数据库服务器的内部通信协议版本从v2升级到v8
  • 修复了在极低概率下(约1/65536),因加解密逻辑的缺陷,创建连接时报错:[-2501] 用户名或密码错误
  • 修复了Node.js v14中关闭数据库连接后,Socket占用内存无法被回收的问题

dmdb v1.0.14280(2022-11-24)

  • 修复了Node.js v16及以上版本使用驱动时出现的意外报错:[-4058] ENOENT

dmdb v1.0.13216(2022-10-09)

  • *第三方依赖snappy从v6升级到v7以支持ARM平台安装和使用驱动
  • 修复了当语句或参数长度超过64K字节导致的Buffer写入越界的问题

dmdb v1.0.11090(2022-06-08)

  • *连接池新增等待队列功能。当连接池中连接数达到上限,后续的getConnection()获取连接请求可以被加入到等待队列中,直到连接池内有可用连接,而不是像原来那样直接报错。相关配置参数如下:
    • queueRequests:连接池达到最大连接数后,后续获取连接请求是否进入等待队列,默认true
    • queueMax:获取连接请求等待队列最大长度,-1表示无限制,默认500
    • queueTimeout:进入等待队列的获取连接请求在等待多少毫秒后,认为请求失败,单位毫秒,0表示永久等待,默认60000

dmdb v1.0.10728(2022-04-18)

  • *从数据库中查询NUMBER/NUMERIC列,结果集中该列数据的类型从js的string类型修改为了js的number类型 注:如果数据库中该列的值超过js number的安全范围,即-(2^53 - 1) 到 2^53 - 1,则不能保证数据正确性!可以参考dm.fetchAsString和dm.ExecuteOptions.fetchInfo将数值转为字符串来解决
  • *修复了在获取连接池连接时,当连接已失效且池中连接数小于poolMin阈值时,连接没有自动重连的问题
  • 修复了存储过程绑入boolean类型的参数到其他数据类型导致执行失败的问题

dmdb v1.0.7697 (2021-08-23)

  • *缓存Buffer改进,对于批量执行的大数据量操作有极大的性能提升,建议老版本驱动更新到此版本
  • 对数据库集群的连接做了一些优化处理和功能新增
  • 日期时间的返回格式更精确
  • 支持更多连接串属性,详情查看index.d.ts文件中的API