1.驱动配置
因为NodeJs版本较多,所以NodeJs驱动分为两个版本,请根据当前环境安装的NodeJs的主版本获取对应驱动版本。比如当前版本为13.9.0则应选择‘node版本小于等于13’版本。node版本查看可在终端输入node -v后回车
2.使用说明
编辑连接数据库配置
NodeJs驱动下载完成并解压后,进入uxdb-node目录,目录中的config.json文件即为连接数据库配置文件,打开文件分别编辑dbserver下的host(数据库所在机器ip)、port(端口)、user(连接数据库用户名)、password(密码)、dbname(连接的数据库名)
"dbserver":{
"host":"127.0.0.1",
"port":"52025",
"user":"uxdb",
"password":"******",
"dbname":"uxdb"
},
编辑sql语句
连接配置编辑完成后,在下方的sql配置中编辑需要执行的sql语句。sqlText中编辑语句,如果sql语句中含有参数则在sqlValue中编辑参数值
sql语句带参数方法1:直接将值放入sql中
"Sql":{
"sqlText":"select from public.test where id 1;",
"sqlValue":[]
},
sql语句带参数方法2:sql语句中放入形参,将参数值放入sqlValue中
"sql":{
"sqlText":"select from public.test where id=$1 and name=$2;",
"sqlvalue":[1,"zhangsan"]
},
连接数据库执行sql
在config.json编辑好连接配置和sql后,在当前目录下打开终端,执行node .\test.js命令,linux下为node ./test.js。
3.示例
默认sql执行后结果如下:
PS C:\....\uxdb-node\uxdb-node>node .\test.js
usename:'uxdb'
usesysid:10,
usecreatedb:true,
usesuper:true,
userepl:true,
usebypassrls:true,
passwd *******
valuntil:null,
useconfig:null
4.接口介绍
4.1.Client 客户端
4.1.1.Client(config)
-
功能
构造函数,创建单个连接客户端
-
函数
new Client(config) -
参数
表 Client(config) 参数说明
名称 描述 config(输入) 客户端配置对象,可包含 host、port、user、password、database、ssl、connectionString 等字段。 -
返回值
返回一个新的 Client 客户端对象。
4.1.2.connect([callback])
-
功能
建立连接,支持 Promise
-
函数
client.connect([callback]) -
参数
表 connect([callback]) 参数说明
名称 描述 callback(输入,可选) 连接建立后调用的回调函数,其参数为错误对象 err,连接成功时为 null。 -
返回值
未提供 callback 时返回 Promise,连接成功时 resolve,失败时 reject;提供 callback 时返回 undefined。
4.1.3.query(config|text[, values][, callback])
-
功能
执行查询,支持 Promise
-
函数
client.query(config|text[, values][, callback]) -
参数
表 query(config|text[, values][, callback]) 参数说明
名称 描述 config|text(输入) 查询配置对象或 SQL 查询文本。 values(输入,可选) SQL 参数值数组。 callback(输入,可选) 查询完成后的回调函数,其参数为错误对象 err 和查询结果 result。 -
返回值
未提供 callback 时返回 Promise,解析为查询结果 result;提供 callback 时返回 undefined。
4.1.4.end([callback])
-
功能
关闭连接,支持 Promise
-
函数
client.end([callback]) -
参数
表 end([callback]) 参数说明
名称 描述 callback(输入,可选) 连接关闭后调用的回调函数。 -
返回值
未提供 callback 时返回 Promise;提供 callback 时返回 undefined。
4.1.5.escapeIdentifier(str)
-
功能
转义标识符(双引号)
-
函数
client.escapeIdentifier(str) -
参数
表 escapeIdentifier(str) 参数说明
名称 描述 str(输入) 需要转义的标识符字符串。 -
返回值
返回转义后的标识符字符串(使用双引号包裹)。
4.1.6.escapeLiteral(str)
-
功能
转义字符串字面量
-
函数
client.escapeLiteral(str) -
参数
表 escapeLiteral(str) 参数说明
名称 描述 str(输入) 需要转义的字面量字符串。 -
返回值
返回转义后的字符串字面量(使用单引号包裹)。
4.1.7.cancel(client, query)
-
功能
取消进行中的查询
-
函数
Client.cancel(client, query) -
参数
表 cancel(client, query) 参数说明
名称 描述 client(输入) 需要取消查询的客户端对象。 query(输入) 需要取消的查询对象。 -
返回值
返回 Promise,取消操作完成后 resolve。
4.1.8.setTypeParser(oid[, format], parseFn)
-
功能
设置类型解析器
-
函数
client.setTypeParser(oid[, format], parseFn) -
参数
表 setTypeParser(oid[, format], parseFn) 参数说明
名称 描述 oid(输入) 类型 OID。 format(输入,可选) 解析格式,取值为 text 或 binary,默认为 text。 parseFn(输入) 类型解析函数。 -
返回值:无
4.1.9.getTypeParser(oid[, format])
-
功能
获取类型解析器
-
函数
client.getTypeParser(oid[, format]) -
参数
表 getTypeParser(oid[, format]) 参数说明
名称 描述 oid(输入) 类型 OID。 format(输入,可选) 解析格式,取值为 text 或 binary。 -
返回值
返回对应类型的解析函数。
4.2.Pool 连接池
4.2.1.Pool(config)
-
功能
构造函数,创建连接池
-
函数
new Pool(config) -
参数
表 Pool(config) 参数说明
名称 描述 config(输入) 连接池配置对象,包含数据库连接参数(host、port、user、password、database 等)和连接池参数(如 max、min、idleTimeoutMillis 等)。 -
返回值
返回一个新的 Pool 连接池对象。
4.2.2.connect([callback])
-
功能
从池中获取连接,支持 Promise
-
函数
pool.connect([callback]) -
参数
表 connect([callback]) 参数说明
名称 描述 callback(输入,可选) 获取连接后调用的回调函数,其参数为错误对象 err 和连接对象 client。 -
返回值
未提供 callback 时返回 Promise,解析为连接对象 client;提供 callback 时返回 undefined。
4.2.3.query(text[, values][, callback])
-
功能
池级查询,支持 Promise
-
函数
pool.query(text[, values][, callback]) -
参数
表 query(text[, values][, callback]) 参数说明
名称 描述 text(输入) SQL 查询文本。 values(输入,可选) SQL 参数值数组。 callback(输入,可选) 查询完成后的回调函数,其参数为错误对象 err 和查询结果 result。 -
返回值
未提供 callback 时返回 Promise,解析为查询结果 result;提供 callback 时返回 undefined。
4.2.4.end([callback])
-
功能
关闭连接池,支持 Promise
-
函数
pool.end([callback]) -
参数
表 end([callback]) 参数说明
名称 描述 callback(输入,可选) 连接池关闭后调用的回调函数。 -
返回值
未提供 callback 时返回 Promise;提供 callback 时返回 undefined。
4.3.Query 查询
4.3.1.Query(text[, values][, callback])
-
功能
构造函数,创建查询对象
-
函数
new Query(text[, values][, callback]) -
参数
表 Query(text[, values][, callback]) 参数说明
名称 描述 text(输入) SQL 查询文本。 values(输入,可选) SQL 参数值数组。 callback(输入,可选) 查询完成后的回调函数,其参数为错误对象 err 和查询结果 result。 -
返回值
返回一个新的 Query 查询对象。
4.4.types 类型系统
4.4.1.getTypeParser(oid[, format])
-
功能
获取类型解析函数
-
函数
types.getTypeParser(oid[, format]) -
参数
表 getTypeParser(oid[, format]) 参数说明
名称 描述 oid(输入) 类型 OID。 format(输入,可选) 解析格式,取值为 text 或 binary。 -
返回值
返回对应类型的解析函数。
4.4.2.setTypeParser(oid[, format], parseFn)
-
功能
注册类型解析函数
-
函数
types.setTypeParser(oid[, format], parseFn) -
参数
表 setTypeParser(oid[, format], parseFn) 参数说明
名称 描述 oid(输入) 类型 OID。 format(输入,可选) 解析格式,取值为 text 或 binary,默认为 text。 parseFn(输入) 类型解析函数。 -
返回值:无
4.4.3.arrayParser
-
功能
数组解析器
-
函数
types.arrayParser -
参数:无。
-
返回值
返回数组类型的解析器。
4.5.native 原生绑定
4.5.1.Client
-
功能
原生 libpq 绑定客户端(暂不支持)。
-
函数
native.Client -
参数:无。
-
返回值:无。