UNPKG

rdb-demo

Version:
31 lines (25 loc) 928 B
let rdb = require('rdb'); let resetDemo = require('./db/resetDemo'); let Customer = rdb.table('_customer'); let Order = rdb.table('_order'); Customer.primaryColumn('cId').guid().as('id'); Customer.column('cName').string().as('name'); Order.primaryColumn('oId').guid().as('id'); Order.column('oOrderNo').string().as('orderNo'); Order.column('oCustomerId').guid().as('customerId'); Order.join(Customer).by('oCustomerId').as('customer'); let db = rdb('postgres://rdb:rdb@localhost/rdbdemo'); module.exports = async function() { try { await resetDemo(); await db.transaction(async () => { let filter = Order.customer.name.equal('John'); let strategy = { customer: null }; let order = await Order.tryGetFirst(filter, strategy); if (order) console.log(await order.toDto()); }); } catch (e) { console.log(e.stack); } }();