nomi-mysql

1.0.3 • Public • Published

nomi-mysql

the mysql plugin of nomi framework.

Installation

$ npm install nomi-mysql --save

Node.js >= 8.0.0 required.

API

  • getConnection
  • insert
  • update
  • updateRows
  • get
  • select
  • delete
  • count
  • beginTransaction
  • query

Usage

const nomiMysql = require('nomi-mysql');
 
const db = nomiMysql({
  host: 'your-host',
  port: 3306,
  user: 'your-username',
  password: 'your-password',
  database: 'your-database-name',
});

demo1: use insert、update to handle data

let row = {
  name: 'fengmk2',
  otherField: 'other field value',
  createdAt: db.literals.now, // `now()` on db server
  // ...
};
let result1 = await db.insert('table-name', {name: 'weiguo.kong'});
let result2 = await db.insert('table-name', [{name: 'weiguo.kong'}, {name: 'lantao.wang'}]);
let result3 = db.update('table-name', {id: 124, name: 'weiguo'});
let ressult4 =  db.update('table-name', {role: '1', otherField: 'other' }, {
  where: { name: 'weiguo' },
  columns: [ 'otherField' ]
});
 

demo2: use get、 select to fetch data

 
let row = await db.get('table-name', { name: 'weiguo.kong' });
let rows = await db.select('table-name');
let rowList = await db.select('table-name', {
  where: {
    type: 'mydb'
  },
  columns: ['author', 'title']
});
let res = db.query('SELECT * FROM user WHERE userId=?', [1]);

demo3: use delete to handle data.

let result = await db.delete('table-name', {
  name: 'weiguo'
});
 

demo4: beginTransaction, commit or rollback

let tran = await db.beginTransaction();
 
try {
  await tran.insert('table-name', {name: 'weiguo.kong'});
  await tran.update('table-name', {id: 124, name: 'weiguo'});
  await tran.commit();
} catch (err) {
  await tran.rollback();
  throw err;
}
 
let result = await db.beginTransactionScope(async (conn) => {
  await conn.insert('table-name', {name: 'weiguo.kong'});
  await conn.update('table-name', {id: 124, name: 'weiguo'});
  return { ret: true, msg: 'success' };
}, ctx);

Package Sidebar

Install

npm i nomi-mysql

Weekly Downloads

3

Version

1.0.3

License

ISC

Unpacked Size

3.79 kB

Total Files

4

Last publish

Collaborators

  • liuxl
  • weoguo.kong.nomi
  • wltazs