knex-on-duplicate-update
Advanced tools
Weekly downloads
Changelog
Readme
Simple patcher for Knex. It adds the .onDuplicateUpdate() function to knex's query builder in order to add support MySQL's on duplicate key update columnName=Values(columnName)
.
Knex
(v0.21.10) added an official upsert
functionality with similar capabilities which supports MySQL, Postgress & SQLite.
To use this lib, first you will have to install it:
npm i knex-on-duplicate-update --save
or
yarn add knex-on-duplicate-update
Then, add the following lines to your Knex set up:
const knex = require('knex')(config);
const {attachOnDuplicateUpdate} = require('knex-on-duplicate-update');
attachOnDuplicateUpdate();
onDuplicateUpdate(...columns: Array<{[key: string]: string} | string>): Knex.QueryBuilder
await knex.insert({id: 1, name: 'John', email: 'john@mail.com'})
.into('persons')
.onDuplicateUpdate('name', 'email');
Setting a fallback value for a column
await knex.insert({id: 1, name: 'John', email: 'john@mail.com'})
.into('persons')
.onDuplicateUpdate('name', {email: 'john-exists@mail.com'});
This lib got inspiration from knex-paginator
.
FAQs
Simple patcher for Knex. It adds the .onDuplicateUpdate() function to knex's query builder.
The npm package knex-on-duplicate-update receives a total of 508 weekly downloads. As such, knex-on-duplicate-update popularity was classified as not popular.
We found that knex-on-duplicate-update demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.