Skip to content

Interface: QueryClientContract ​

Shape of the query client, that is used to retrieve instances of query builder

Properties ​

PropertyModifierTypeDescription
connectionNamereadonlystringThe name of the connection from which the client was originated
debugpublicbooleanIs debug enabled on the connection or not. Also opens up the API to disable debug for a given client
dialectreadonlyDialectContractThe database dialect in use
emitterpublicEmitter<any>-
frompublicFromTable<DatabaseQueryBuilderContract<any>>Same as query(), but also selects the table for the query. The from method doesn't allow defining the return type and one must use query to define that.
isTransactionreadonlybooleanTells if client is a transaction client or not
modereadonly"read" | "dual" | "write"The client mode in which it is execute queries
schemapublicSchemaBuilderReturns schema instance for the write client
tablepublic<ReturnColumns>(table: string) => InsertQueryBuilderContract<ReturnColumns[]>Same as insertQuery(), but also selects the table for the query. The table method doesn't allow defining the return type and one must use insertQuery to define that.
transactionpublicTransactionFnGet instance of transaction client

Methods ​

columnsInfo() ​

Call Signature ​

ts
columnsInfo(table: string): Promise<{
[column: string]: ColumnInfo;
}>;

Returns columns info for a given table

Parameters ​
ParameterType
tablestring
Returns ​

Promise<{ [column: string]: ColumnInfo; }>

Call Signature ​

ts
columnsInfo(table: string, column: string): Promise<ColumnInfo>;
Parameters ​
ParameterType
tablestring
columnstring
Returns ​

Promise<ColumnInfo>


dropAllDomains() ​

ts
dropAllDomains(schemas?: string[]): Promise<void>;

Drop all domains inside the database

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<void>


dropAllTables() ​

ts
dropAllTables(schemas?: string[]): Promise<void>;

Drop all tables inside database

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<void>


dropAllTypes() ​

ts
dropAllTypes(schemas?: string[]): Promise<void>;

Drop all types inside the database

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<void>


dropAllViews() ​

ts
dropAllViews(schemas?: string[]): Promise<void>;

Drop all views inside the database

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<void>


getAdvisoryLock() ​

ts
getAdvisoryLock(key: string | number, timeout?: number): Promise<boolean>;

Work with advisory locks

Parameters ​

ParameterType
keystring | number
timeout?number

Returns ​

Promise<boolean>


getAllDomains() ​

ts
getAllDomains(schemas?: string[]): Promise<string[]>;

Returns an array of all domain names

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<string[]>


getAllTables() ​

ts
getAllTables(schemas?: string[]): Promise<string[]>;

Get all tables of the database

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<string[]>


getAllTypes() ​

ts
getAllTypes(schemas?: string[]): Promise<string[]>;

Returns an array of all types names

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<string[]>


getAllViews() ​

ts
getAllViews(schemas?: string[]): Promise<string[]>;

Returns an array of all views names for one or many schemas

Parameters ​

ParameterType
schemas?string[]

Returns ​

Promise<string[]>


getReadClient() ​

ts
getReadClient(): Knex<any, any>;

Returns the read and write clients

Returns ​

Knex<any, any>


getWriteClient() ​

ts
getWriteClient(): Knex<any, any>;

Returns ​

Knex<any, any>


insertQuery() ​

ts
insertQuery<ReturnColumns>(): InsertQueryBuilderContract<ReturnColumns[]>;

Get new query builder instance inserts

Type Parameters ​

Type ParameterDefault type
ReturnColumnsany

Returns ​

InsertQueryBuilderContract<ReturnColumns[]>


knexQuery() ​

ts
knexQuery(): QueryBuilder;

Returns the knex query builder instance

Returns ​

QueryBuilder


knexRawQuery() ​

ts
knexRawQuery(sql: string, bindings?: RawQueryBindings): Raw;

Returns the knex raw query builder instance

Parameters ​

ParameterType
sqlstring
bindings?RawQueryBindings

Returns ​

Raw


modelQuery() ​

ts
modelQuery<T, Result>(model: T): ModelQueryBuilderContract<T, Result>;

Returns the query builder for a given model

Type Parameters ​

Type ParameterDefault type
T extends LucidModel-
ResultT

Parameters ​

ParameterType
modelT

Returns ​

ModelQueryBuilderContract<T, Result>


query() ​

ts
query<Result>(): DatabaseQueryBuilderContract<Result>;

Get new query builder instance for select, update and delete calls

Type Parameters ​

Type ParameterDefault type
Resultany

Returns ​

DatabaseQueryBuilderContract<Result>


raw() ​

ts
raw(sql: string, bindings?: RawQueryBindings): RawBuilderContract;

Returns instance of raw builder

Parameters ​

ParameterType
sqlstring
bindings?RawQueryBindings

Returns ​

RawBuilderContract


rawQuery() ​

ts
rawQuery<Result>(sql: string, bindings?: RawQueryBindings): RawQueryBuilderContract<Result>;

Get raw query builder instance

Type Parameters ​

Type ParameterDefault type
Resultany

Parameters ​

ParameterType
sqlstring
bindings?RawQueryBindings

Returns ​

RawQueryBuilderContract<Result>


ref() ​

ts
ref(reference: string): ReferenceBuilderContract;

Returns instance of reference builder

Parameters ​

ParameterType
referencestring

Returns ​

ReferenceBuilderContract


releaseAdvisoryLock() ​

ts
releaseAdvisoryLock(key: string | number): Promise<boolean>;

Parameters ​

ParameterType
keystring | number

Returns ​

Promise<boolean>


truncate() ​

ts
truncate(table: string, cascade?: boolean): Promise<void>;

Truncate a given table

Parameters ​

ParameterType
tablestring
cascade?boolean

Returns ​

Promise<void>