1.0.7 • Published 2 years ago

easier_query v1.0.7

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

npm version npm downloads install size

Why make this

Sometimes, for some small projects, we do not need to synchronize the table by model setting, just add, delete, modify and query. We do not need to use the ORM framework, so we get this library.

Installation

npm i easier_query

Usage

Initialization

const EasyQuery = require('easier_query')
const myQuery = new EasyQuery({
    host: "127.0.0.1",      // the mysql host
    user: "root",           // the mysql user
    port: "3306",           // the mysql server port
    database: "test",       // the database you will use
    password: "root",       // the password
    debug:true              // true means the built sql string will be printed in the console
})

query

const res = await myQuery.query("select id,name,gender from profile order by id asc limit 10")
console.log(res)

execute

const res = await myQuery.execute("delete from profile where id = 20")
console.log(res)

select

const res1 = await myQuery.table('profile').field('id,name,gender,phone').where('id','<',100).order('id desc').limit(3).select()
console.log(res1)
// group select
const res2 = await myQuery.table('profile').field('gender,count(1) as cnt').group('gender').having('cnt','>',3).select()
console.log(res2)

find

const res = await myQuery.table('profile').field('id,name,gender,phone').where('id','<',100).find()
console.log(res)

update

const res = await myQuery.table('profile').where('id','<',100).save({gender:"female"})
console.log(res)

delete

const res = await myQuery.table('profile').where('id','<',100).delete()
console.log(res)    // the changedRows

insert

let data = {
    name:"lucy",
    age:"18",
    gender:"female"
}
const res = await myQuery.table('profile').insert(data)
console.log(res)    // the affectedRows

fetch

fecth() must be used before find、select、delete、save、insert

let data = {
    name:"lucy",
    age:"18",
    gender:"female"
}
const res =  myQuery.table('profile').fetch().insert(data)
console.log(res)    // return the sql string
  • version 1.0.3

count

const res1 = await myQuery.table('profile').where('id','<',400).where('gender','=','女').count();
console.log(res1)

page

const res1 = await myQuery.table('profile').where('id','<',400).where('gender','=','女').page(20,3);
console.log(res1)

join

notice that the column name may be ambiguous.

const withJoin = async () => {
    const res = await myQuery.table('image').join('poster','poster.id = image.pid','LEFT').where('image.id','<',35).select();
    console.log(res)
}
withJoin()

Changelog

  • 1.0.7

    fixed the delete bug.

  • 1.0.6

    add query and execute method, and it seems to be the final edition. focus on bug fixing.

  • 1.0.5

    add join method

  • 1.0.4

    add port option,and make ide hinting code

  • 1.0.3

    add count and page method

  • 1.0.2

    add group , fetch , having and have method

Motto

Manners Maketh Man

1.0.7

2 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.2

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago