Repository navigation
modules_query
Rafael Corrêa Chaves edited this page Jul 18, 2021
·
1 revision
A simple modular, scalable query builder that let you toggle strategies to easily, used and created by Açaí Framework.
- MySQL
- PostgreSQL
- mongo
- sqlite
npm
npm install --save @acai/query
yarn
yarn add @acai/query
The first thing you are going to need is setup your query, you can easily define your default query or just setup one as follows:
import query, { setDefault, addQuery } from "@acai/query";
// Add query of sql type
await addQuery("secondary", "sql", { /* sql config */ });
const sqlquery = query("secondary");
// or setup a default query so you can easily import
await setDefaultQuery("pg", {
/* Optional sql query settings, if you want to pass any */
});
// now every time you call query without arguments, it will look for the default query
const pgquery = query(); // <-- this is a postgreSQL query builderYou can easily search select using the query
import query from "@acai/query";
const results = await query().table("people").where("id", 5).get(["name", "age"]);Our query builder smartlys build your raw string query so you don't have to worry about the details, for example:
await query().table("people").where("id", 5).where("name", "Robert").get();
// will output:
// SELECT FROM people WHERE id = 5 AND name = Robert
await query().table("people").where("id", 2).orWhere("name", "Robert").get();
// will output:
// SELECT FROM people WHERE id = 5 OR name = Robertimport query from "@acai/query";
await query().table("people").insert({
name: "John",
surname: "Doe",
age: 32,
});import query from "@acai/query";
await query().table("people").where("id", 5).update({
name: "John"
});import query from "@acai/query";
await query().table("people").where("id", 5).delete();Copyright (c) 2021 APO Softworks. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.