Update conflict appenditures. Add updated_at field
This commit is contained in:
parent
e6af7de865
commit
31a7fb40cb
7
dist/lib/grab-duplicate-safe-insert-sql.js
vendored
7
dist/lib/grab-duplicate-safe-insert-sql.js
vendored
@ -3,10 +3,11 @@ export default async function ({ sql: passed_sql, table, data }) {
|
|||||||
let sql = passed_sql;
|
let sql = passed_sql;
|
||||||
const { dbSchema } = await init();
|
const { dbSchema } = await init();
|
||||||
const table_schema = dbSchema.tables.find((t) => t.tableName == table);
|
const table_schema = dbSchema.tables.find((t) => t.tableName == table);
|
||||||
|
const now = Date.now();
|
||||||
if (table_schema?.tableName) {
|
if (table_schema?.tableName) {
|
||||||
const set_sql = Object.keys(data[0])
|
const set_sql_arr = Object.keys(data[0]).map((field) => `${field} = excluded.${field}`);
|
||||||
.map((field) => `${field} = excluded.${field}`)
|
set_sql_arr.push(`updated_at = ${now}`);
|
||||||
.join(", ");
|
const set_sql = set_sql_arr.join(", ");
|
||||||
const unique_fields = table_schema.fields.filter((f) => f.unique);
|
const unique_fields = table_schema.fields.filter((f) => f.unique);
|
||||||
for (let i = 0; i < unique_fields.length; i++) {
|
for (let i = 0; i < unique_fields.length; i++) {
|
||||||
const field = unique_fields[i];
|
const field = unique_fields[i];
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@moduletrace/bun-sqlite",
|
"name": "@moduletrace/bun-sqlite",
|
||||||
"version": "1.0.28",
|
"version": "1.0.29",
|
||||||
"description": "SQLite manager for Bun",
|
"description": "SQLite manager for Bun",
|
||||||
"author": "Benjamin Toby",
|
"author": "Benjamin Toby",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
|
|||||||
@ -10,11 +10,16 @@ export default async function ({ sql: passed_sql, table, data }: Params) {
|
|||||||
let sql = passed_sql;
|
let sql = passed_sql;
|
||||||
const { dbSchema } = await init();
|
const { dbSchema } = await init();
|
||||||
const table_schema = dbSchema.tables.find((t) => t.tableName == table);
|
const table_schema = dbSchema.tables.find((t) => t.tableName == table);
|
||||||
|
const now = Date.now();
|
||||||
|
|
||||||
if (table_schema?.tableName) {
|
if (table_schema?.tableName) {
|
||||||
const set_sql = Object.keys(data[0])
|
const set_sql_arr = Object.keys(data[0]).map(
|
||||||
.map((field) => `${field} = excluded.${field}`)
|
(field) => `${field} = excluded.${field}`,
|
||||||
.join(", ");
|
);
|
||||||
|
|
||||||
|
set_sql_arr.push(`updated_at = ${now}`);
|
||||||
|
|
||||||
|
const set_sql = set_sql_arr.join(", ");
|
||||||
|
|
||||||
const unique_fields = table_schema.fields.filter((f) => f.unique);
|
const unique_fields = table_schema.fields.filter((f) => f.unique);
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user