Describe the bug
When you use any of the following query builder operations in a chain they only take in a table name property, but no schema property. If a table is embedded in a schema there is no way for it to know where that table is located and how to fetch it.
deleteFrom(...)
innerJoin(...)
leftJoin(...)
rightJoin(...)
outerJoin(...)
into(...)
To Reproduce
See the current interface definition below. The selectFrom operator does allow for a schema, but other operations such as DELETE, INSERT, and UPDATE don't support that.
export interface OuterbaseType {
queryBuilder: QueryBuilder
selectFrom: (
columnsArray: { schema?: string; table: string; columns: string[] }[]
) => OuterbaseType
insert: (data: { [key: string]: any }) => OuterbaseType
update: (data: { [key: string]: any }) => OuterbaseType
deleteFrom: (table: string) => OuterbaseType
where: (condition: any) => OuterbaseType
limit: (limit: number) => OuterbaseType
offset: (offset: number) => OuterbaseType
orderBy: (column: string, direction?: 'ASC' | 'DESC') => OuterbaseType
innerJoin: (
table: string,
condition: string,
options?: any
) => OuterbaseType
leftJoin: (table: string, condition: string, options?: any) => OuterbaseType
rightJoin: (
table: string,
condition: string,
options?: any
) => OuterbaseType
outerJoin: (
table: string,
condition: string,
options?: any
) => OuterbaseType
into: (table: string) => OuterbaseType
returning: (columns: string[]) => OuterbaseType
asClass: (classType: any) => OuterbaseType
query: () => Promise<any>
queryRaw: (query: string, parameters?: QueryParams) => Promise<any>
groupBy: (column: string) => OuterbaseType
toString: () => string
}
Expected behavior
One may expect this to behave by passing both a schema and a table name into these and keeping them closely correlated when constructing queries.
Screenshots
N/A
Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
N/A
Describe the bug
When you use any of the following query builder operations in a chain they only take in a table name property, but no schema property. If a table is embedded in a schema there is no way for it to know where that table is located and how to fetch it.
deleteFrom(...)innerJoin(...)leftJoin(...)rightJoin(...)outerJoin(...)into(...)To Reproduce
See the current interface definition below. The
selectFromoperator does allow for a schema, but other operations such as DELETE, INSERT, and UPDATE don't support that.Expected behavior
One may expect this to behave by passing both a schema and a table name into these and keeping them closely correlated when constructing queries.
Screenshots
N/A
Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
N/A