This commit is contained in:
Nybkox
2025-01-23 15:46:15 +01:00
parent 645a1d35e8
commit bcf89b1f09
33 changed files with 832 additions and 87 deletions

View File

@@ -1,3 +1,5 @@
import { ColumnInfo } from './dbinfo';
export interface SqlDialect {
rangeSelect?: boolean;
limitSelect?: boolean;
@@ -6,6 +8,7 @@ export interface SqlDialect {
topRecords?: boolean;
stringEscapeChar: string;
offsetFetchRangeSyntax?: boolean;
offsetNotSupported?: boolean;
quoteIdentifier(s: string): string;
fallbackDataType?: string;
explicitDropConstraint?: boolean;
@@ -14,6 +17,7 @@ export interface SqlDialect {
enableConstraintsPerTable?: boolean;
requireStandaloneSelectForScopeIdentity?: boolean;
allowMultipleValuesInsert?: boolean;
rawUuids?: boolean;
dropColumnDependencies?: string[];
changeColumnDependencies?: string[];
@@ -45,6 +49,10 @@ export interface SqlDialect {
omitUniqueConstraints?: boolean;
omitIndexes?: boolean;
omitTableAliases?: boolean;
omitTableBeforeColumn?: boolean;
disableAutoIncrement?: boolean;
disableNonPrimaryKeyRename?: boolean;
defaultNewTableColumns?: ColumnInfo[];
sortingKeys?: boolean;
// syntax for create column: ALTER TABLE table ADD COLUMN column

View File

@@ -32,6 +32,7 @@ export interface RunScriptOptions {
export interface QueryOptions {
discardResult?: boolean;
importSqlDump?: boolean;
range?: { offset: number; limit: number };
}
export interface WriteTableOptions {
@@ -180,6 +181,7 @@ export interface EngineDriver<TClient = any> extends FilterBehaviourProvider {
beforeConnectionSave?: (values: any) => any;
databaseUrlPlaceholder?: string;
defaultAuthTypeName?: string;
defaultLocalDataCenter?: string;
defaultSocketPath?: string;
authTypeLabel?: string;
importExportArgs?: any[];
@@ -251,7 +253,7 @@ export interface EngineDriver<TClient = any> extends FilterBehaviourProvider {
createSaveChangeSetScript(
changeSet: any,
dbinfo: DatabaseInfo,
defaultCreator: (changeSet: any, dbinfo: DatabaseInfo) => any
defaultCreator: (changeSet: any, dbinfo: DatabaseInfo, dialect: SqlDialect) => any
): any[];
// adapts table info from different source (import, other database) to be suitable for this database
adaptTableInfo(table: TableInfo): TableInfo;