Skip to main content
Version: Next

abstractSchemaHelper

Hierarchy

Index

Constructors

constructor

Accessors

options

  • get options(): { createForeignKeyConstraints?: boolean; disableForeignKeys?: boolean; ignoreSchema?: string[]; managementDbName?: string; skipColumns?: Dictionary<(string | RegExp)[]>; skipTables?: (string | RegExp)[] }
  • Returns { createForeignKeyConstraints?: boolean; disableForeignKeys?: boolean; ignoreSchema?: string[]; managementDbName?: string; skipColumns?: Dictionary<(string | RegExp)[]>; skipTables?: (string | RegExp)[] }

    • optionalcreateForeignKeyConstraints?: boolean

      Generate foreign key constraints.

    • optionaldisableForeignKeys?: boolean

      Try to disable foreign key checks during schema operations.

    • optionalignoreSchema?: string[]

      Schema names to ignore when comparing schemas.

    • optionalmanagementDbName?: string

      Database name to use for management operations (e.g., creating/dropping databases).

    • optionalskipColumns?: Dictionary<(string | RegExp)[]>

      Column names or patterns to skip during schema generation, keyed by table name.

    • optionalskipTables?: (string | RegExp)[]

      Table names or patterns to skip during schema generation.

Methods

alterTable

  • alterTable(diff, safe): string[]

alterTableColumn

  • alterTableColumn(column, table, changedProperties): string[]
  • Parameters

    • column: Column
    • table: DatabaseTable
    • changedProperties: Set<string>

    Returns string[]

alterTableComment

  • alterTableComment(table, comment): string
  • Parameters

    • table: DatabaseTable
    • optionalcomment: string

    Returns string

append

  • append(array, sql, pad): void
  • Parameters

    • array: string[]
    • sql: string | string[]
    • pad: boolean = false

    Returns void

appendComments

  • appendComments(table): string[]
  • Parameters

    • table: DatabaseTable

    Returns string[]

castColumn

  • castColumn(name, type): string
  • Parameters

    • name: string
    • type: string

    Returns string

createCheck

  • createCheck(table, check): string
  • Parameters

    • table: DatabaseTable
    • check: CheckDef<unknown>

    Returns string

createForeignKey

  • createForeignKey(table, foreignKey, alterTable, inline): string
  • Parameters

    • table: DatabaseTable
    • foreignKey: ForeignKey
    • alterTable: boolean = true
    • inline: boolean = false

    Returns string

createIndex

  • createIndex(index, table, createPrimary): string
  • Parameters

    • index: IndexDef
    • table: DatabaseTable
    • createPrimary: boolean = false

    Returns string

createTable

  • createTable(table, alter): string[]
  • Parameters

    • table: DatabaseTable
    • optionalalter: boolean

    Returns string[]

createTableColumn

  • createTableColumn(column, table, changedProperties): undefined | string
  • Parameters

    • column: Column
    • table: DatabaseTable
    • optionalchangedProperties: Set<string>

    Returns undefined | string

databaseExists

  • databaseExists(connection, name): Promise<boolean>
  • Parameters

    Returns Promise<boolean>

disableForeignKeysSQL

  • disableForeignKeysSQL(): string
  • Returns string

dropConstraint

  • dropConstraint(table, name): string
  • Parameters

    • table: string
    • name: string

    Returns string

dropForeignKey

  • dropForeignKey(tableName, constraintName): string
  • Parameters

    • tableName: string
    • constraintName: string

    Returns string

dropIndex

  • dropIndex(table, index, oldIndexName): string
  • Parameters

    • table: string
    • index: IndexDef
    • oldIndexName: string = index.keyName

    Returns string

dropTableIfExists

  • dropTableIfExists(name, schema): string
  • Parameters

    • name: string
    • optionalschema: string

    Returns string

enableForeignKeysSQL

  • enableForeignKeysSQL(): string
  • Returns string

finalizeTable

  • finalizeTable(table, charset, collate): string
  • Parameters

    • table: DatabaseTable
    • charset: string
    • optionalcollate: string

    Returns string

getAddColumnsSQL

  • getAddColumnsSQL(table, columns): string[]
  • Parameters

    • table: DatabaseTable
    • columns: Column[]

    Returns string[]

getAlterNativeEnumSQL

  • getAlterNativeEnumSQL(name, schema, value, items, oldItems): string
  • Parameters

    • name: string
    • optionalschema: string
    • optionalvalue: string
    • optionalitems: string[]
    • optionaloldItems: string[]

    Returns string

getChangeColumnCommentSQL

  • getChangeColumnCommentSQL(tableName, to, schemaName): string
  • Parameters

    • tableName: string
    • to: Column
    • optionalschemaName: string

    Returns string

getCreateDatabaseSQL

  • getCreateDatabaseSQL(name): string
  • Parameters

    • name: string

    Returns string

getCreateIndexSQL

  • getCreateIndexSQL(tableName, index): string
  • Parameters

    Returns string

getCreateNamespaceSQL

  • getCreateNamespaceSQL(name): string
  • Parameters

    • name: string

    Returns string

getCreateNativeEnumSQL

  • getCreateNativeEnumSQL(name, values, schema): string
  • Parameters

    • name: string
    • values: unknown[]
    • optionalschema: string

    Returns string

getDatabaseExistsSQL

  • getDatabaseExistsSQL(name): string
  • Parameters

    • name: string

    Returns string

getDatabaseNotExistsError

  • getDatabaseNotExistsError(dbName): string
  • Parameters

    • dbName: string

    Returns string

getDefaultEmptyString

  • getDefaultEmptyString(): string
  • Returns string

getDropColumnsSQL

  • getDropColumnsSQL(tableName, columns, schemaName): string
  • Parameters

    • tableName: string
    • columns: Column[]
    • optionalschemaName: string

    Returns string

getDropDatabaseSQL

  • getDropDatabaseSQL(name): string
  • Parameters

    • name: string

    Returns string

getDropIndexSQL

  • getDropIndexSQL(tableName, index): string
  • Parameters

    Returns string

getDropNamespaceSQL

  • getDropNamespaceSQL(name): string
  • Parameters

    • name: string

    Returns string

getDropNativeEnumSQL

  • getDropNativeEnumSQL(name, schema): string
  • Parameters

    • name: string
    • optionalschema: string

    Returns string

getListTablesSQL

  • getListTablesSQL(schemaName): string
  • Parameters

    • optionalschemaName: string

    Returns string

getManagementDbName

  • getManagementDbName(): string
  • Returns string

getNamespaces

  • getNamespaces(connection): Promise<string[]>

getPostAlterTable

  • getPostAlterTable(tableDiff, safe): string[]

getPreAlterTable

  • getPreAlterTable(tableDiff, safe): string[]

getPrimaryKeys

  • getPrimaryKeys(connection, indexes, tableName, schemaName): Promise<string[]>

getReferencedTableName

  • getReferencedTableName(referencedTableName, schema): string
  • Parameters

    • referencedTableName: string
    • optionalschema: string

    Returns string

getRenameColumnSQL

  • getRenameColumnSQL(tableName, oldColumnName, to, schemaName): string
  • Parameters

    • tableName: string
    • oldColumnName: string
    • to: Column
    • optionalschemaName: string

    Returns string

getRenameIndexSQL

  • getRenameIndexSQL(tableName, index, oldIndexName): string[]
  • Parameters

    • tableName: string
    • index: IndexDef
    • oldIndexName: string

    Returns string[]

getSchemaBeginning

  • getSchemaBeginning(_charset, disableForeignKeys): string
  • Parameters

    • _charset: string
    • optionaldisableForeignKeys: boolean

    Returns string

getSchemaEnd

  • getSchemaEnd(disableForeignKeys): string
  • Parameters

    • optionaldisableForeignKeys: boolean

    Returns string

getTablesGroupedBySchemas

  • getTablesGroupedBySchemas(tables): Map<undefined | string, Table[]>
  • Parameters

    Returns Map<undefined | string, Table[]>

hasNonDefaultPrimaryKeyName

  • hasNonDefaultPrimaryKeyName(table): boolean
  • Parameters

    • table: DatabaseTable

    Returns boolean

inferLengthFromColumnType

  • inferLengthFromColumnType(type): undefined | number
  • Parameters

    • type: string

    Returns undefined | number

abstractloadInformationSchema

  • loadInformationSchema(schema, connection, tables, schemas): Promise<void>

mapForeignKeys

  • mapForeignKeys(fks, tableName, schemaName): Dictionary
  • Parameters

    • fks: any[]
    • tableName: string
    • optionalschemaName: string

    Returns Dictionary

normalizeDefaultValue

  • normalizeDefaultValue(defaultValue, length, defaultValues): string | number
  • Parameters

    Returns string | number

splitTableName

  • splitTableName(name, skipDefaultSchema): [undefined | string, string]
  • Parameters

    • name: string
    • skipDefaultSchema: boolean = false

    Returns [undefined | string, string]

supportsSchemaConstraints

  • supportsSchemaConstraints(): boolean
  • Returns boolean