Skip to content

informat.datasource 数据源相关操作

概述

使用informat.datasource执行数据源相关的操作

getConnection

从数据库连接池获取连接

javascript
informat.datasource.getConnection(moduleId, dataSourceKey, setting)
参数类型描述
moduleIdString数据源模块标识符
dataSourceKeyString数据源标识符
settingDataSourceConnnectionSetting数据源配置

返回值 数据库连接 类型为JDBCConnection

示例

javascript
const connection = informat.datasource.getConnection('dataSource', 'db_informat', {
    "autoCommit": true
})
connection.select('select * form table', (row) => {
    console.log(row.getString(1))
})

Connection

select

执行查询,如果查询失败会抛出异常

javascript
connection.select(sql, handler, ...args)
参数类型描述
sqlString查询的SQL
handler(ResultSet)Function查询结果回调函数
args...Object查询的参数

示例1

javascript
//查询 user 表中name等于tom的数据
connection.select('select * from user where name=?', (rs) => {
    console.log(rs.getString('name'))
}, 'tom')

示例2 使用like

javascript
//查询 user 表中name包含tom的数据
connection.select('select * from user where name like concat(' % ',?,' % ')', (rs) => {
    console.log(rs.getString('name'))
}, 'tom')

示例3 使用in

javascript
//查询 user 表中name是tom或jerry的数据
connection.select('select name from user where name in(?,?)', (rs) => {
    console.log(rs.getString('name'))
}, 'tom', 'jerry')

insert

执行插入,如果插入失败会抛出异常

javascript
connection.insert(sql, returnAutoGeneratedKeys, ...args)
参数类型描述
sqlString查询的SQL
returnAutoGeneratedKeysBoolean是否返回自增的主键ID
args...Object插入的参数

返回值

类型为String

如果设置了returnAutoGeneratedKeys为true,并且执行的操作为insert则返回最后插入数据的自增ID

示例

javascript
connection.insert('insert into user(name,age) values (?, ?)', true, 'tom', 10)

update

执行更新或者删除, 如果更新或者删除失败会抛出异常

javascript
connection.update(sql, ...args)
参数类型描述
sqlString查询的SQL
args...Object更新的参数

返回值 类型为Integer

返回更新或删除成功的记录条数

示例

javascript
connection.update('update user set age=?', 10)
javascript
connection.update('delete from user where age=?', 10)

commit

提交事务,如果提交事务失败会抛出异常

javascript
connection.commit()

rollback

回滚事务,如果回滚事务失败会抛出异常

javascript
connection.rollback()

ResultSet

TIP

columnIndex为索引时,起始索引为1

方法返回值描述
getString(columnIndex)String按照索引或者列名获取String类型的列
getBoolean(columnIndex)String按照索引或者列名获取Boolean类型的列
getByte(columnIndex)String按照索引或者列名获取Byte类型的列
getShort(columnIndex)String按照索引或者列名获取Short类型的列
getInt(columnIndex)String按照索引或者列名获取Integer类型的列
getLong(columnIndex)String按照索引或者列名获取Long类型的列
getFloat(columnIndex)String按照索引或者列名获取Float类型的列
getDouble(columnIndex)String按照索引或者列名获取Double类型的列
getBytes(columnIndex)String按照索引或者列名获取byte[]类型的列
getDate(columnIndex)String按照索引或者列名获取Date类型的列
getTime(columnIndex)String按照索引或者列名获取Time类型的列
getTimestamp(columnIndex)String按照索引或者列名获取Timestamp类型的列
getObject(columnIndex)String按照索引或者列名获取Object类型的列
getBigDecimal(columnIndex)String按照索引或者列名获取BigDecimal类型的列
getColumnCount()Integer返回结果集的列数量
getColumnName(columnIndex)String按照索引返回列名
getColumnTypeName(columnIndex)String按照索引返回列类型