Appearance
NodeJS 接口使用介绍
基于 Node-API 规范,版本要求 10.0.0 及以上。
创建连接
js
let ip = "192.168.2.50";
let port = 19504;
let user = "root";
let password = "root";
let timeout = 60; // seconds
let database = "db"; // default database
let conn = new Connection(ip, port, timeout, user, password, database);
使用同步方法写入数据
核心方法 insert 返回 json 对象
js
conn.use_database("db")
let cols = [
{name: "IsArray", type: TYPES.VT_DOUBLE},
{name: "Quality", type: TYPES.VT_DOUBLE},
{name: "TagValue", type: TYPES.VT_DOUBLE},
{name: "UaDataType", type: TYPES.VT_DOUBLE},
{name: "TagStringValue", type: TYPES.VT_STRING},
{name: "HostNameTag", type: TYPES.VT_STRING},
{name: "e_date", type: TYPES.VT_DATETIME},
];
let rows = [
[1, 2, 3, 4, "abc", "def", new Date().getTime() * 1e6],
[5, 6, 7, 4, "abcr", "defe", new Date().getTime() * 1e6],
];
let rv = conn.insert("ee_tt", cols, rows);
console.log(rv);
使用异步方法写入数据
核心方法 insert_async 返回 Promise 对象,值为 json 对象
js
conn.use_database("db")
let cols = [
{name: "IsArray", type: TYPES.VT_DOUBLE},
{name: "Quality", type: TYPES.VT_DOUBLE},
{name: "TagValue", type: TYPES.VT_DOUBLE},
{name: "UaDataType", type: TYPES.VT_DOUBLE},
{name: "TagStringValue", type: TYPES.VT_STRING},
{name: "HostNameTag", type: TYPES.VT_STRING},
{name: "e_date", type: TYPES.VT_DATETIME},
];
let rows = [
[1, 2, 3, 4, "abc", "def", new Date().getTime() * 1e6],
[5, 6, 7, 4, "abcr", "defe", new Date().getTime() * 1e6],
];
let rv = await conn.insert_async("ee_tt", cols, rows);
console.log(rv);
执行 SQL 语句
sql 遵循标准的 SQL 语法规范(MySQL),支持查询、更新、删除等操作
sql 示例
- 建库 sql 示例sql
CREATE DATABASE IF NOT EXISTS magus_abc
- 建表 sql 示例sql
CREATE TABLE dd_tt ( IsArray VtDouble not null default 0.0, Quality VtDouble not null default 0.0, TagValue VtDouble not null default 0.0, UaDataType VtDouble not null default 0.0, TagStringValue VtString not null default '', HostNameTag VtString not null default '' keyCol, e_date VtDateTime not null DEFAULT '2000-01-01 00:00:00' timeCol )
- 更新数据 sql 示例sql
update dd_tt set Quality =1 where HostNameTag ="zs"
- 删除数据 sql 示例sql
delete from dd_tt where e_date < '2024-02-01'
- 查询数据 sql 示例sql
select * from db.dd_tt
代码示例
核心方法 exec 返回 json 对象
js
let sql = "SELECT * from db.ee_tt";
let rv = conn.exec(sql);
console.log(rv);