@devbro/sql-generator
Version:
generic sql generator
1 lines • 2.44 kB
Source Map (JSON)
{"version":3,"sources":["../../../src/databases/postgresql/PostgresqlQueryGrammar.ts"],"sourcesContent":["import { Query } from '../../Query';\nimport { QueryGrammar } from '../../QueryGrammar';\nimport { CompiledSql, Parameter } from '../../types';\n\nexport class PostgresqlQueryGrammar extends QueryGrammar {\n private parameterIndex: number;\n constructor() {\n super();\n this.parameterIndex = 1;\n }\n\n toSql(query: Query): CompiledSql {\n this.parameterIndex = 1;\n return super.toSql(query);\n }\n\n getVariablePlaceholder(): string {\n return '$' + this.parameterIndex++;\n }\n\n compileInsert(query: Query, data: Record<string, any>): CompiledSql {\n this.parameterIndex = 1;\n return super.compileInsert(query, data);\n }\n\n compileInsertGetId(\n query: Query,\n data: Record<string, any>,\n options: { primaryKey: string[] } = { primaryKey: ['id'] }\n ): CompiledSql {\n this.parameterIndex = 1;\n const rc = super.compileInsert(query, data);\n rc.sql += ` RETURNING ${options.primaryKey.join(', ')}`;\n return rc;\n }\n\n compileUpdate(query: Query, data: Record<string, any>): CompiledSql {\n this.parameterIndex = 1;\n return super.compileUpdate(query, data);\n }\n\n compileDelete(query: Query): CompiledSql {\n this.parameterIndex = 1;\n return super.compileDelete(query);\n }\n\n compileUpsert(\n query: Query,\n data: Record<string, Parameter>,\n conflictFields: string[],\n updateFields: string[]\n ): CompiledSql {\n this.parameterIndex = 1;\n return super.compileUpsert(query, data, conflictFields, updateFields);\n }\n}\n"],"mappings":"AACA,SAAS,oBAAoB;AAGtB,MAAM,+BAA+B,aAAa;AAAA,EAC/C;AAAA,EACR,cAAc;AACZ,UAAM;AACN,SAAK,iBAAiB;AAAA,EACxB;AAAA,EAEA,MAAM,OAA2B;AAC/B,SAAK,iBAAiB;AACtB,WAAO,MAAM,MAAM,KAAK;AAAA,EAC1B;AAAA,EAEA,yBAAiC;AAC/B,WAAO,MAAM,KAAK;AAAA,EACpB;AAAA,EAEA,cAAc,OAAc,MAAwC;AAClE,SAAK,iBAAiB;AACtB,WAAO,MAAM,cAAc,OAAO,IAAI;AAAA,EACxC;AAAA,EAEA,mBACE,OACA,MACA,UAAoC,EAAE,YAAY,CAAC,IAAI,EAAE,GAC5C;AACb,SAAK,iBAAiB;AACtB,UAAM,KAAK,MAAM,cAAc,OAAO,IAAI;AAC1C,OAAG,OAAO,cAAc,QAAQ,WAAW,KAAK,IAAI,CAAC;AACrD,WAAO;AAAA,EACT;AAAA,EAEA,cAAc,OAAc,MAAwC;AAClE,SAAK,iBAAiB;AACtB,WAAO,MAAM,cAAc,OAAO,IAAI;AAAA,EACxC;AAAA,EAEA,cAAc,OAA2B;AACvC,SAAK,iBAAiB;AACtB,WAAO,MAAM,cAAc,KAAK;AAAA,EAClC;AAAA,EAEA,cACE,OACA,MACA,gBACA,cACa;AACb,SAAK,iBAAiB;AACtB,WAAO,MAAM,cAAc,OAAO,MAAM,gBAAgB,YAAY;AAAA,EACtE;AACF;","names":[]}