Skip to main content
Version: Next

abstractDatabaseDriver <C>

Hierarchy

Implements

Index

Properties

[EntityManagerType]

[EntityManagerType]: EntityManager<DatabaseDriver<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

abstractcount

  • Parameters

    Returns Promise<number>

countVirtual

createEntityManager

  • Parameters

    • optionaluseContext: boolean

    Returns D[typeof EntityManagerType]

abstractfind

  • Finds selection of entities


    Parameters

    Returns Promise<EntityData<T>[]>

abstractfindOne

  • Finds single entity (table row, document)


    Parameters

    Returns Promise<null | EntityData<T>>

findVirtual

  • Parameters

    Returns Promise<EntityData<T>[]>

getConnection

  • Parameters

    Returns C

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

  • Returns Platform

loadFromPivotTable

  • loadFromPivotTable(prop: EntityProperty<any, any>, owners: (O extends { [PrimaryKeyProp]?: PK } ? PK extends keyof O<O> ? ReadonlyPrimary<UnwrapPrimary<O<O>[PK<PK>]>> : PK extends keyof O<O>[] ? ReadonlyPrimary<PrimaryPropToType<O<O>, PK<PK>>> : PK : O extends { _id?: PK } ? string | ReadonlyPrimary<PK> : O extends { uuid?: PK } ? ReadonlyPrimary<PK> : O extends { id?: PK } ? ReadonlyPrimary<PK> : O)[][], where?: any, 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


    Parameters

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

    Returns Promise<Dictionary<T[]>>

lockPessimistic

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

    Returns Promise<void>

mapResult

abstractnativeDelete

abstractnativeInsert

abstractnativeInsertMany

abstractnativeUpdate

nativeUpdateMany

reconnect

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

setMetadata

  • Parameters

    Returns void

syncCollections

  • Parameters

    Returns Promise<void>