Skip to content

database 数据库

使用前, 需要先使用 createPoolcreate 创建操作对象, 才能操作数据库

在下面中, 会使用 db 代表使用 createPool 后的对象

createPool(config) create(config)

参数

参数说明
config传入 object 或 json 文件的路径

返回值

object 数据库操作对象

代码

javascript
// 文件路径
module.exports = require('database').createPool('@/objects/mxd-database.json')
// 对象
module.exports = require('database').createPool({
    url: '',
    username: '',
    password: ''
})

update(sql[, ...args])

? 做参数占位符, 使用预编译

新增 删除 修改 操作使用

参数

参数说明
sqlsql
args参数

返回值

number 受影响的行数

代码

javascript
const rows = db.update('UPDATE accounts SET pawssword = ? WHERE username = ?', 'ppwwdd', 'admin')

query(sql[, ...args])

? 做参数占位符, 使用预编译 查询 操作使用

参数

参数说明
sqlsql
args参数

返回值

object 数据库操作对象

代码

javascript
const conn = db.getConnection()

getConnection()

一般需要手动式事务时使用

参数

返回值

object (array) 查询数据集合

代码

javascript
const conn = db.getConnection()
try {
    
    const rows = db.update('UPDATE accounts SET pawssword = ? WHERE username = ?', 'ppwwdd', 'admin')
    // ...conn.setAutoCommit(false)
    conn.commit()
} catch (e) {
    try {
        if (conn) {
            conn.rollback()
        }
    } catch (e) {
        console.log(e)
    }
    console.log(e)
} finally {
    try {
        if (conn) {
            conn.close();
        }
    } catch (e) {
        console.log(e)
    }
}

setAutoCommit(enable)

开启或关闭事务的自动提交, 一般配合 getConnection 做手动式事务

参数

参数说明
enable开启或关闭

返回值

代码

javascript
const conn = db.getConnection()
conn.setAutoCommit(false)