0.1.1 • Published 10 months ago

@gravs/build-query v0.1.1

Weekly downloads
-
License
ISC
Repository
github
Last release
10 months ago

Query Builder

Generador de consultas SQL para PostgreSQL, MySQL diseñado para ser flexible, portátil y divertido de usar.

Instalación

Instale el paquete build-query desde la linea de comandos usando npm :

$ npm install @gravs/query-builder

Luego instale la biblioteca de base de datos apropiada pg o mysql2 :

$ npm install pg
$ npm install mysql2

Conectarse

Lo primero que debemos hacer es incluir @gravs/query-builder en nuestro proyecto y abrir un conexión a la base de datos de la siguiente manera :

const gravs = require("@gravs/build-query");

const config = {
  driver: "postgres", // si esta usando mysql entonces reemplacelo
  config: {
    host: "127.0.0.1",
    port: 5432,
    user: "postgres",
    password: "password",
    database: "test_app",
  },
};

gravs
  .connect(config)
  .then((ok) => console.log(ok))
  .catch((error) => console.error(error));

Ejemplos

Operación Encontrar.

Vamos a encontrar en nombre y la raza de todos los cachorros registrados en la entidad puppy, para ello usamos el método find() :

const puppies = await gravs.find({
  entity: "puppy",
  fields: ["name", "race"],
});

Si queremos encontrar cachorros solo de la raza 'labrador' utilizaremos filtros y enviaremos los campos vacíos para poder obtener todos los campos de la entidad puppy :

const puppies = await gravs.find({
  entity: "puppy",
  fields: [],
  filters: { race: "labrador" },
});

Operación Registrar.

Para agregar un cachorro en la entidad puppy con el nombre 'aika' utilizamos la método create() :

await gravs.create({
  entity: "puppy",
  attributes: { _id: 1, name: "aika", race: "labrador" },
  returning: { return: true, fields: [] },
});

Si quieres obtener los atributos del cachorro agregado usamos el parámetro returning como se muestra a continuación :

const puppy = await gravs.create({
  entity: "puppy",
  attributes: { _id: 1, name: "aika", race: "labrador" },
  returning: { return: true, fields: [] },
});

Operación Modificar.

Para modificar la edad de un cachorro de la entidad puppy usamos el método update() y pasaremos como parámetros el nombre de la entidad y los atributos que se modificaran, ademas enviaremos el código del cachorro que modificaremos :

await gravs.update({
  entity: "puppy",
  attributes: { age: 2 },
  filters: { _id: 1 },
});

Y si queremos obtener el resultado del cachorro modificado usamos el parámetro returning :

const puppy = await gravs.update({
  entity: "puppy",
  attributes: { age: 1 },
  filters: { _id: 3 },
  returning: { return: true, fields: [] },
});

Operación Eliminar.

Para eliminar un cachorro de la base de datos debemos usar el método remove() en donde pasaremos en nombre de la entidad puppy junto con el código del cachorro que queremos eliminar :

await gravs.remove({
  entity: "puppy",
  filters: { _id: 2 },
});

Y para obtener el cachorro eliminado usamos returning para devolver los atributos del cachorro eliminado :

const puppy = await gravs.remove({
  entity: "puppy",
  filters: { _id: 4 },
  returning: { return: true, fields: [] },
});
0.1.1

10 months ago

0.1.0

10 months ago

0.0.0

10 months ago