better solution #19
2 changed files with 2 additions and 14 deletions
|
@ -315,7 +315,7 @@ export class Handler {
|
|||
},
|
||||
insert: (hander: Handler, q: insertQuery): QueryBuilder => {
|
||||
const qb = new QueryBuilder();
|
||||
qb.addCode("INSERT INTO ");
|
||||
qb.addCode("INSERT IGNORE INTO ");
|
||||
qb.addCode(q.attrs[0].table.serialize(hander));
|
||||
qb.addCode("(");
|
||||
qb.addCodeCommaSeperated(q.attrs.map(a => a.serialize(hander)));
|
||||
|
@ -604,13 +604,6 @@ export class Handler {
|
|||
},
|
||||
}
|
||||
|
||||
catcherrors = {
|
||||
insert: (err: any) => {
|
||||
if(err?.code == "ER_DUP_ENTRY") return {affectedRows: 0, insertId: -1};
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
responses = {
|
||||
readResponse: (resp: any) => new readResponse(resp),
|
||||
writeResponse: (resp: any) => new writeResponse(resp.affectedRows),
|
||||
|
|
|
@ -138,12 +138,7 @@ export class insertQuery {
|
|||
const handler = db.getHandler();
|
||||
const builder = this.serialize(handler);
|
||||
const s = handler.builders.query(builder);
|
||||
let readResp: any;
|
||||
try {
|
||||
readResp = await db.query(s, printQuery);
|
||||
} catch (err) {
|
||||
readResp = handler.catcherrors.insert(err);
|
||||
}
|
||||
let readResp = await db.query(s, printQuery);
|
||||
return handler.responses.insertResponse(readResp);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue