Skip to main content
Version: 6.3

IDatabaseDriver <C>

Implemented by

Index

Properties

[EntityManagerType]

[EntityManagerType]: EntityManager<IDatabaseDriver<C>>

readonlyconfig

Methods

aggregate

  • aggregate(entityName: string, pipeline: any[]): Promise<any[]>
  • Parameters

    • entityName: string
    • pipeline: any[]

    Returns Promise<any[]>

close

  • close(force?: boolean): Promise<void>
  • Parameters

    • optionalforce: boolean

    Returns Promise<void>

connect

  • connect(): Promise<C>
  • Returns Promise<C>

convertException

  • Converts native db errors to standardized driver exceptions


    Parameters

    • exception: Error

    Returns DriverException

count

  • Type parameters

    • T: object
    • P: string = never

    Parameters

    Returns Promise<number>

createEntityManager

find

  • Finds selection of entities


    Type parameters

    • T: object
    • P: string = never
    • F: string = *
    • E: string = never

    Parameters

    Returns Promise<EntityData<T>[]>

findOne

  • Finds single entity (table row, document)


    Type parameters

    • T: object
    • P: string = never
    • F: string = *
    • E: string = never

    Parameters

    Returns Promise<null | EntityData<T>>

findVirtual

getConnection

getDependencies

  • getDependencies(): string[]
  • Returns name of the underlying database dependencies (e.g. mongodb or mysql2) for SQL drivers it also returns knex in the array as connectors are not used directly there


    Returns string[]

getMetadata

getPlatform

loadFromPivotTable

  • loadFromPivotTable<T, O>(prop: EntityProperty<any, any>, owners: (O extends { [PrimaryKeyProp]?: PK } ? PK extends keyof O ? ReadonlyPrimary<UnwrapPrimary<O[PK]>> : PK extends keyof O[] ? ReadonlyPrimary<PrimaryPropToType<O, PK>> : PK : O extends { _id?: PK } ? string | ReadonlyPrimary<PK> : O extends { uuid?: PK } ? ReadonlyPrimary<PK> : O extends { id?: PK } ? ReadonlyPrimary<PK> : O)[][], where?: FilterQuery<T>, orderBy?: OrderDefinition<T>, ctx?: any, options?: FindOptions<T, any, any, any>, pivotJoin?: boolean): Promise<Dictionary<T[]>>
  • When driver uses pivot tables for M:N, this method will load identifiers for given collections from them


    Type parameters

    • T: object
    • O: object

    Parameters

    • prop: EntityProperty<any, any>
    • owners: (O extends { [PrimaryKeyProp]?: PK } ? PK extends keyof O ? ReadonlyPrimary<UnwrapPrimary<O[PK]>> : PK extends keyof O[] ? ReadonlyPrimary<PrimaryPropToType<O, PK>> : PK : O extends { _id?: PK } ? string | ReadonlyPrimary<PK> : O extends { uuid?: PK } ? ReadonlyPrimary<PK> : O extends { id?: PK } ? ReadonlyPrimary<PK> : O)[][]
    • optionalwhere: FilterQuery<T>
    • optionalorderBy: OrderDefinition<T>
    • optionalctx: any
    • optionaloptions: FindOptions<T, any, any, any>
    • optionalpivotJoin: boolean

    Returns Promise<Dictionary<T[]>>

lockPessimistic

  • lockPessimistic<T>(entity: T, options: LockOptions): Promise<void>
  • Type parameters

    • T: object

    Parameters

    Returns Promise<void>

mapResult

nativeDelete

nativeInsert

nativeInsertMany

nativeUpdate

nativeUpdateMany

reconnect

  • reconnect(): Promise<C>
  • Returns Promise<C>

setMetadata

syncCollections