Class MySQL

Hierarchy

  • EventEmitter
    • MySQL

Constructors

  • Creates a new instance of the class

    Parameters

    • config: PoolConfig & {
          rejectUnauthorized?: boolean;
      }

    Returns MySQL

Properties

config: PoolConfig & {
    rejectUnauthorized?: boolean;
}
pool: Pool
tableOptions: string = 'ENGINE=InnoDB PACK_KEYS=1 ROW_FORMAT=COMPRESSED'

Methods

  • Protected

    Starts a transaction on the specified connection

    Parameters

    • connection: PoolConnection

    Returns Promise<void>

  • Closes all the pooled connections

    Returns Promise<void>

  • Protected

    Commits a transaction on the specified connection

    Parameters

    • connection: PoolConnection

    Returns Promise<void>

  • Protected

    Returns a database connection from the pool

    Returns Promise<PoolConnection>

  • Prepares and executes the creation of a table including the relevant indexes and constraints

    Parameters

    • name: string
    • fields: Column[]
    • primaryKey: string[]
    • tableOptions: string = ...
    • useTransaction: boolean = true

    Returns Promise<void>

  • Drop the tables from the database

    Parameters

    • tables: string | string[]

    Returns Promise<QueryResult<any>[]>

  • Lists the tables in the specified database

    Parameters

    • database: undefined | string = ...

    Returns Promise<string[]>

  • Prepares and performs a query that performs a multi-insert statement which is far faster than a bunch of individual insert statements

    Parameters

    • table: string
    • columns: string[] = []
    • values: any[][]
    • useTransaction: boolean = true

    Returns Promise<QueryResult<any>>

  • Prepares and executes a query to that performs a multi-update statement which is based upon a multi-insert statement that performs an UPSERT which is a lot faster than a bunch of update statements

    Parameters

    • table: string
    • primaryKey: string[]
    • columns: string[]
    • values: any[][]
    • useTransaction: boolean = true

    Returns Promise<QueryResult<any>>

  • Parameters

    • event: "error"
    • listener: ((error: Error) => void)
        • (error: Error): void
        • Parameters

          • error: Error

          Returns void

    Returns MySQL

  • Parameters

    • event: "acquire"
    • listener: ((connection: PoolConnection) => void)
        • (connection: PoolConnection): void
        • Parameters

          • connection: PoolConnection

          Returns void

    Returns MySQL

  • Parameters

    • event: "connection"
    • listener: ((connection: PoolConnection) => void)
        • (connection: PoolConnection): void
        • Parameters

          • connection: PoolConnection

          Returns void

    Returns MySQL

  • Parameters

    • event: "enqueue"
    • listener: (() => void)
        • (): void
        • Returns void

    Returns MySQL

  • Parameters

    • event: "release"
    • listener: ((connection: PoolConnection) => void)
        • (connection: PoolConnection): void
        • Parameters

          • connection: PoolConnection

          Returns void

    Returns MySQL

  • Prepares the creation of a table including the relevant indexes and constraints

    Parameters

    • name: string
    • fields: Column[]
    • primaryKey: string[]
    • tableOptions: string = ...

    Returns Query[]

  • Prepares a query to perform a multi-insert statement which is far faster than a bunch of individual insert statements

    Parameters

    • table: string
    • columns: string[] = []
    • values: any[][]

    Returns Query

  • Prepares a query to perform a multi-update statement which is based upon a multi-insert statement that performs an UPSERT and this is a lot faster than a bunch of individual update statements

    Parameters

    • table: string
    • primaryKey: string[]
    • columns: string[]
    • values: any[][]

    Returns Query

  • Performs an individual query and returns the result

    Type Parameters

    • RecordType = any

    Parameters

    • query: string | Query
    • values: any[] = []
    • connection: Pool | PoolConnection = ...

    Returns Promise<QueryResult<RecordType>>

  • Protected

    Rolls back a transaction on the specified connection

    Parameters

    • connection: PoolConnection

    Returns Promise<void>

  • Performs the specified queries in a transaction

    Type Parameters

    • RecordType = any

    Parameters

    Returns Promise<QueryResult<RecordType>[]>

  • Switches the default database referenced by the connection

    Parameters

    • database: string

    Returns Promise<QueryResult<any>>