Skip to content

xiaohaijoe/TimelineDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TimelineDB

TimelineDB是一个面向node.js的orm数据库操作框架,非完美移植于ThinkPHP 5.0的数据库框架
主要特性包括:

  1. 类拆分为Connection(连接器)/Query(查询器)/Builder(SQL生成器)
  2. Query对象查询
  3. 链式操作
  4. 抛弃node.js异步操作,避免Promise回调地狱

使用方法:

  1. 补充数据库配置信息(host,user,password,database)
  2. 导入./test.sql
  3. cnpm install
  4. npm run dev

说明文档

https://github.com/xiaohaijoe/TimelineDB/wiki/TimelineDB-Document

演示项目

http://timeline.xiaohaijoe.com (建议使用手机打开)

基本使用

初始化

import Connection from './database/connection'
let config = {
    host: 'xxx.xxx.xxx.xxx',
    user: 'root',
    password: 'xxxxxx',
    database: 'xxxx',
};
Connection.initConnection(config);

执行sql语句

await DB.query('select * from test_user where username = ?', ['hello']);

查询方法

await DB.table('test_user').where('username', 'hello').select();

插入方法

await DB.table('test_user').insert({"username": "hello","password": "123456","add_time": new Date().getTime() / 1000});

更新方法

await DB.table('test_user').where('id', 1).update({"password": "1234422"});

删除方法

await DB.table('test_user').where('username', 'USERNAME').delete();

事务处理

let db = await DB.startTrans();
try {
    await db.table('test_user').find();
    await db.table('test_user').where('username','aaaa').delete();
    await db.commit();
}catch (e) {
    await db.rollback();
}

更多说明请查看说明文档。

Releases

No releases published

Packages

No packages published