IDatabaseDriver <C>
Implemented by
Index
Properties
Methods
Properties
[EntityManagerType]
readonlyconfig
Methods
aggregate
Parameters
entityName: string
pipeline: any[]
Returns Promise<any[]>
close
Parameters
optionalforce: boolean
Returns Promise<void>
connect
Returns Promise<C>
convertException
Parameters
exception: Error
Returns DriverException
count
Type parameters
- T: object
- P: string = never
Parameters
entityName: string
where: FilterQuery<T>
optionaloptions: CountOptions<T, P>
Returns Promise<number>
createEntityManager
Type parameters
Parameters
optionaluseContext: boolean
Returns D[typeof EntityManagerType]
find
Finds selection of entities
Type parameters
- T: object
- P: string = never
- F: string = *
- E: string = never
Parameters
entityName: string
where: FilterQuery<T>
optionaloptions: FindOptions<T, P, F, E>
Returns Promise<EntityData<T>[]>
findOne
Finds single entity (table row, document)
Type parameters
- T: object
- P: string = never
- F: string = *
- E: string = never
Parameters
entityName: string
where: FilterQuery<T>
optionaloptions: FindOneOptions<T, P, F, E>
Returns Promise<null | EntityData<T>>
findVirtual
Type parameters
- T: object
Parameters
entityName: string
where: FilterQuery<T>
options: FindOptions<T, any, any, any>
Returns Promise<EntityData<T>[]>
getConnection
Parameters
optionaltype: ConnectionType
Returns C
getDependencies
Returns name of the underlying database dependencies (e.g.
mongodb
ormysql2
) for SQL drivers it also returnsknex
in the array as connectors are not used directly thereReturns string[]
getMetadata
Returns MetadataStorage
getPlatform
Returns Platform
loadFromPivotTable
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
Type parameters
- T: object
Parameters
entity: T
options: LockOptions
Returns Promise<void>
mapResult
Type parameters
- T: object
Parameters
result: EntityDictionary<T>
meta: EntityMetadata<T>
optionalpopulate: PopulateOptions<T>[]
Returns null | EntityData<T>
nativeDelete
Type parameters
- T: object
Parameters
entityName: string
where: FilterQuery<T>
optionaloptions: NativeDeleteOptions<T>
Returns Promise<QueryResult<T>>
nativeInsert
Type parameters
- T: object
Parameters
entityName: string
data: EntityDictionary<T>
optionaloptions: NativeInsertUpdateOptions<T>
Returns Promise<QueryResult<T>>
nativeInsertMany
Type parameters
- T: object
Parameters
entityName: string
data: EntityDictionary<T>[]
optionaloptions: NativeInsertUpdateManyOptions<T>
optionaltransform: (sql: string) => string
Returns Promise<QueryResult<T>>
nativeUpdate
Type parameters
- T: object
Parameters
entityName: string
where: FilterQuery<T>
data: EntityDictionary<T>
optionaloptions: NativeInsertUpdateOptions<T>
Returns Promise<QueryResult<T>>
nativeUpdateMany
Type parameters
- T: object
Parameters
entityName: string
where: FilterQuery<T>[]
data: EntityDictionary<T>[]
optionaloptions: NativeInsertUpdateManyOptions<T>
Returns Promise<QueryResult<T>>
reconnect
Returns Promise<C>
setMetadata
Parameters
metadata: MetadataStorage
Returns void
syncCollections
Type parameters
- T: object
- O: object
Parameters
collections: Iterable<Collection<T, O>>
optionaloptions: DriverMethodOptions
Returns Promise<void>
Converts native db errors to standardized driver exceptions